Commit Graph

131 Commits

Author SHA1 Message Date
5d9d2f88f9 meta(tasks): close [bootstrap-fix-tdd-recommend-template] + [bootstrap-upgrade-canonical-triggers]
Both tasks done. v1.10.1 fix shipped (aac9088), upgrade tested on claude-skills (ac0fa57).
Unblock ready — mass-rollout of 5-string group can proceed.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 12:07:29 +03:00
d5155c33e2 meta(tasks): create [bootstrap-fix-tdd-recommend-template] in claude-skills 2026-05-07 08:57:55 +00:00
2347f4e9b5 meta(tasks): update [claude-skills-update-skill] in claude-skills 2026-05-07 07:52:50 +00:00
d70c16db5b meta(tasks): update [install-ps1] in claude-skills 2026-05-07 07:52:40 +00:00
2c7eb1f70a meta(tasks): close [refresh-project-bootstrap] in claude-skills 2026-05-07 07:52:32 +00:00
7acda2ecc2 meta(tasks): create [claude-skills-update-skill] in claude-skills 2026-05-07 07:42:05 +00:00
3716dec621 meta(tasks): update [bootstrap-upgrade-canonical-triggers] in claude-skills 2026-05-07 07:32:36 +00:00
94b4c441e6 fix(tdd-criteria): review findings — v0.1.0→v0.2.0
- Remove session-authorship trigger loophole (applies to ALL code changes)
- Add composite-tasks paragraph (criterion applies per artefact, not per task)
- Add refactoring carve-out (existing passing tests sufficient, no new tests)
- Expand file-extension list (go, rs, java, rb, ex, swift, kt, cs, php)
- Clarify wrapper line-count (non-blank non-comment lines)
- Add spike-survivor fallback (TODO/GitHub issue if no .tasks/)
- Fix "чужая schema" → "foreign schema" in algorithm + design doc
- Define TDD procedurally (red→green→refactor) in Default mode section
- Sync design doc with same changes
- Rebuild dist + dist-hermes + reinstall

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-07 10:12:59 +03:00
e260fe6cb1 chore(tasks): sync board — 4 stale entries → done, unblock hermes-converter-ci
hermes-flavour-mcp-setups, hermes-installer-skill (5990b06),
hermes-mvp-coverage (a003b80), bootstrap-add-tdd-trigger (e566df4)
shipped but STATUS.md still showed ready. hermes-converter-ci
blocker resolved → ready.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-07 10:12:58 +03:00
a673241bb9 chore(tasks): update hermes-mvp-coverage to done
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-07 10:12:58 +03:00
27026c5e0e feat(hermes): flavour-mcp-setups + installer-skill [v1.0.0-hermes]
- hermes-flavour-mcp-setups: setup-projects-meta + setup-context7
  rewritten as yaml-edit ~/.hermes/config.yaml (no clone/build)
  pre-checks binary+auth.toml exist, fallback to git clone with
  extraheader-pattern. mapping: pending → manual.

- hermes-installer-skill: dist-hermes/meta/claude-skills-installer/SKILL.md
  recursive bootstrap installer. iterates dist-hermes/<cat>/<name>/,
  calls skill_manage(action='create') per skill. respects SKIPPED.md.

- dist-hermes/mcp/: both MCP setup skills generated via build-hermes.py.

- hermes-mvp-coverage: unblocked (ready → next task).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 10:12:58 +03:00
acfc8e697f meta(tasks): create [bootstrap-upgrade-canonical-triggers] in claude-skills 2026-05-07 06:57:11 +00:00
588d65d2e0 meta(tasks): create [bootstrap-add-tdd-trigger] in claude-skills 2026-05-07 06:05:13 +00:00
7bde0cd963 chore(tasks): close tdd-criteria skill-write, mapping, build-install; unblock review
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-07 08:31:30 +03:00
d440bb52c1 meta(tasks): create [tdd-criteria-precommit-hook] in claude-skills 2026-05-07 05:10:29 +00:00
b7819b175e meta(tasks): update [tdd-criteria-skill-write] in claude-skills 2026-05-07 05:09:49 +00:00
936a888423 meta(tasks): create [tdd-criteria-review] in claude-skills 2026-05-07 04:03:12 +00:00
5a01bdffb7 meta(tasks): create [tdd-criteria-build-install] in claude-skills 2026-05-07 04:02:39 +00:00
3dd359b36f meta(tasks): create [tdd-criteria-hermes-mapping] in claude-skills 2026-05-07 04:02:22 +00:00
07ce432dfd meta(tasks): create [tdd-criteria-skill-write] in claude-skills 2026-05-07 04:02:05 +00:00
89648b9df3 chore(tasks): unblock hermes follow-ups after MVP shipped
[hermes-flavour-mcp-setups] and [hermes-installer-skill] gated only on
[hermes-converter-mvp] (shipped in 6b36b31) — flipped 🔵.
[hermes-mvp-coverage] still blocked on the other two; [hermes-converter-ci]
still blocked on hermes-mvp-coverage.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 00:02:01 +03:00
0cc7757d83 chore(tasks): close [hermes-converter-mvp]
Shipped in 6b36b31. Coverage check walked the 5 acceptance criteria
inline (mapping schema, build script, 4 universals through converter,
dist-hermes/ committed, security infra ready). Smoke-tests: idempotency,
replace-rule application, strict-mapping fail-fast — all verified.
Unblocks [hermes-flavour-mcp-setups], [hermes-installer-skill],
[hermes-mvp-coverage].

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 00:00:55 +03:00
f4c12ce4fd chore(tasks): close [using-tasks-close-coverage-gate]
Shipped in b0d2d51. Coverage check completed inline (acceptance criteria
all have evidence: SKILL.md sections, README mirror, version bump,
build+install verified, smoke-tests covered by self-application).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 23:49:44 +03:00
733e1466df chore(tasks): close 3 stale 's shipped in earlier commits
Closes [project-creation-lifecycle-skill] (shipped 23431c5 — project-bootstrap
1.9.0 greenfield-full mode), [extend-project-discipline-brainstorm-workspaces]
(shipped 215afdd — project-discipline 0.1.1 Rule 5), [recommend-dont-menu-skill]
(shipped 011a8b4 — recommend-dont-menu 0.1.0). Heading emoji fix on the third
(was  while Status was 🟢 Done — sync error). Smoke-test gap on greenfield-full
acceptance criteria — tracked in [using-tasks-close-coverage-gate].

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 23:46:35 +03:00
879957d989 meta(tasks): update [using-tasks-close-coverage-gate] in claude-skills 2026-05-06 20:43:25 +00:00
ab996a2643 meta(tasks): create [using-tasks-close-coverage-gate] in claude-skills 2026-05-06 20:22:25 +00:00
ff99bc6bf7 meta(tasks): create [hermes-converter-ci] in claude-skills 2026-05-06 20:21:57 +00:00
d9c1ec69b5 meta(tasks): create [hermes-mvp-coverage] in claude-skills 2026-05-06 20:21:50 +00:00
b1647b868f meta(tasks): create [hermes-installer-skill] in claude-skills 2026-05-06 20:21:40 +00:00
7305d41ecb meta(tasks): create [hermes-flavour-mcp-setups] in claude-skills 2026-05-06 20:21:30 +00:00
3cb8a01078 meta(tasks): create [hermes-converter-mvp] in claude-skills 2026-05-06 20:21:21 +00:00
f2d1e6e2ae chore(tasks): remove setup-projects-meta-token-leak task
User request — kill it.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 22:52:17 +03:00
011a8b42f2 feat(recommend-dont-menu): add skill + integrate into project-bootstrap [v0.1.0 / v1.9.0]
- Add `recommend-dont-menu` skill: overrides superpowers:brainstorming
  to give single argued recommendations instead of menus
- Integrate into project-bootstrap:
  - Add "recommend, don't menu" trigger to CLAUDE.md template
  - Add row to Step 5.6 trigger→fulfiller table
- Bump project-bootstrap 1.8.0 → 1.9.0 (MINOR — adds trigger)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 22:49:56 +03:00
9eceaacec8 meta(tasks): create [recommend-dont-menu-skill] in claude-skills 2026-05-06 18:31:57 +00:00
7a478b84eb meta(tasks): create [extend-project-discipline-brainstorm-workspaces] in claude-skills 2026-05-06 18:27:06 +00:00
694abcd2c1 meta(tasks): create [project-creation-lifecycle-skill] in claude-skills 2026-05-06 18:19:48 +00:00
04886036ed tasks: open setup-interns-fix-paths
Mirror of done [using-projects-meta-fix-paths] for the sister skill.
setup-interns/SKILL.md still uses <project-root>/.common/... (cwd-
relative); should be ~/projects/.common/... like setup-projects-meta.
Surfaced during factory-bootstrap field-test (Phase 1 STOP because
claude inherited cwd C:\Windows\System32, no .common/ child there).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 15:26:45 +03:00
ecaa73bfe1 tasks: open setup-projects-meta-token-leak
Surfaced during factory-bootstrap field-test on Win11 laptop.
Phase 4 of /setup-projects-meta retries clone with USER:TOKEN@host
URL on auth-failure, which git persists in .git/config of the
cloned repo. Replace with per-invocation extraheader form:

  git -c http.extraheader="Authorization: token $T" clone <url>

Field-test artefact: .factory/L0/install-log.md шаг 11c-1.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 15:18:38 +03:00
81af7825b6 feat(interns): add repo_read routing to using-interns + Node/repomix checks to setup-interns [v0.2.0]
using-interns: overview table 2→3 interns, routing hints for repo_read
vs bulk_text_read, tool quick reference row. setup-interns: Phase 0
adds node --version check + optional repomix pre-warm.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-06 07:02:42 +03:00
daf33391c0 meta(tasks): create [interns-repo-read-skill-updates] in claude-skills 2026-05-05 20:05:08 +00:00
d9728ef2e7 meta(tasks): pause [active-platform-eval] after design + pre-flight
Combined the two backlog tasks [active-platform-tuning] +
[active-platform-eval] into a single workstream. Eval IS the tuning
mechanism; "wait for 5 real signals" was a placeholder replaced by
a 20-query synthetic eval set balanced across Win/Lin/Mac.

Spec written at .wiki/concepts/active-platform-eval-design.md
(~150 lines): 20 queries (>=3 should-trigger per OS + near-miss
negatives), run_loop.py 5-iter autoloop in parallel with manual
body sweep (WSL clarity, BSD/macOS expansion, ambiguity policy).
Workspace at .tasks/active-platform-eval/ (eval-set.json committed,
iterations gitignored). Version bump 1.0.0 -> 1.1.0 planned (MINOR).

Pre-flight verified: claude CLI on PATH at C:\nvm4w\nodejs\claude.ps1
(Claude Code 2.1.128); run_loop.py present in skill-creator install.
Both autoloop deps satisfied -- no fallback to manual single-pass.

Per-task file at .tasks/active-platform-eval.md (Goal, Key files,
Decisions log, Open questions, Notes). STATUS.md collapsed the two
original blocks into one paused block; resume point is Q2
(write 20 queries solo vs run skill-creator HTML-review template).

Also fixed in same pause: [install-ps1] STATUS scope expanded to
paired install.sh + install.ps1, cross-platform parity, prune flag
(lesson from [compress-dedup]).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 22:35:55 +03:00
6e4f3f481b refactor(skills): dedup compress -> caveman-compress [v1.0.0]
skills/compress/ was a byte-identical dupe of skills/caveman-compress/
(SHA256 match across all 7 scripts/ files; SKILL.md diff was name: +
Process step 2 only; descriptions textually identical = arbitrary
harness tie-break + double-counted listing budget).

Kept caveman-compress canonical: it carries README.md (benchmarks +
caveman-toolkit branding) and SECURITY.md (Snyk false-positive writeup),
and matches the caveman-* prefix invariant.

Ported the better Process-step wording from compress
(`cd <directory_containing_this_SKILL.md>`) into caveman-compress;
the prior `cd caveman-compress` form assumed cwd was the parent dir
and broke when invoked from ~/.claude/skills/caveman-compress/.

Added version: 1.0.0 to caveman-compress frontmatter
(first versioned release; aligns with skill-versioning concept).

Removed: skills/compress/, dist/compress.skill,
~/.claude/skills/compress/ (manual prune; install.sh has no prune step
yet -- future [install-ps1] task should add --prune).

Slash-command impact: /compress gone; /caveman-compress and
/caveman:compress (toolkit-canonical) remain.

Wiki: .wiki/concepts/compress-dedup.md (rationale + rejected
alternatives), index.md + log.md updated.

Tasks: [compress-dedup] flipped active -> done in same commit
(per-task file .tasks/compress-dedup.md created with full decisions
log).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 21:49:44 +03:00
8c547d73af feat(project-bootstrap): generic Step 5.6 skill-deps check
Collapse Step 5.6 from a single-skill detector (only the
superpowers@claude-plugins-official plugin) into a generic
`trigger -> fulfiller` table walker that scales to every canonical
CLAUDE.md trigger.

Inline 9-row map in SKILL.md covers: caveman, superpowers (kind: plugin),
using-wiki, using-tasks, using-projects-meta, pulling-before-work,
project-discipline, using-interns, active-platform. The `kind` flag
(skill | plugin) drives which install command is emitted in the chat-only
recommendation block. Detection paths: ~/.claude/skills/<name>/SKILL.md
for skills, plugins.<id> in ~/.claude/plugins/installed_plugins.json
for plugins.

Algorithm: read project's CLAUDE.md -> match each non-comment line vs
map (substring + tolower, mirrors Step 5 idempotent merge) -> for each
canonical match check disk -> print one chat block listing every missing
fulfiller with copy-pasteable install commands, OR a single
"all dependencies satisfied" line. User-custom lines and removed
canonical lines are silently skipped. Hard rule "never auto-install"
preserved verbatim.

version: 1.6.0 -> 1.7.0 (MINOR per project-discipline Rule 3 -- adds
capability, absorbs prior superpowers-only detector cleanly).

Closes [bootstrap-skill-deps-check] (.tasks/STATUS.md done).
Closes [bootstrap-recommend-projects-meta] by absorption -- the deferred
mirror task was the seed of this generalization; the generic walker now
handles using-projects-meta along with everything else, no per-skill
mirror needed.

Design rationale at .wiki/concepts/bootstrap-skill-deps-check.md:
- why generic over per-skill mirrors (5x mirror explosion)
- skill vs plugin kind distinction
- MCP-server-backed skills (only check using-X policy skill;
  setup-X self-fires via Prerequisites pointer)
- source-of-truth invariant: SKILL map + assets/CLAUDE.md.template
  must stay in sync (a future CI lint could enforce)
2026-05-05 21:21:19 +03:00
2f7943f06f fix(setup-projects-meta): canon path table -> .common/lib
SKILL.md Phase 5 platform-path table (lines 152-154) had stale
~/.local/projects-meta-mcp; replace with ~/projects/.common/lib/
projects-meta-mcp to match real install canon (body Phase 4 clone
target + ~/.claude.json mcpServers.projects-meta.args[0]).

version: 1.0.0 -> 1.0.1 (PATCH, doc consistency).

Closes [using-projects-meta-fix-paths] (.tasks/STATUS.md done).
Sibling task [migrate-to-common-lib] in projects-meta-mcp closed
the same day with matching path migration.
2026-05-05 21:14:06 +03:00
66f39e7ec8 add [using-projects-meta-fix-paths]: fix stale ~/.local/ refs
Skill prescribes `node ~/.local/projects-meta-mcp/dist/sync.js` for the
Step 0 freshness gate, but the real install (per ~/.claude.json) lives
at ~/projects/.common/lib/projects-meta-mcp/. setup-projects-meta likely
needs the same audit.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 20:59:52 +03:00
001f4c566b feat(skills): update setup-projects-meta paths for .common/lib/
- Replace ~/.local/projects-meta-mcp → ~/projects/.common/lib/projects-meta-mcp
- Update setup-projects-meta and using-projects-meta skills
- Rebuild dist/ with new paths

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 20:35:59 +03:00
05ea501683 meta(tasks): create [bootstrap-skill-deps-check]; supersede [bootstrap-recommend-projects-meta]
New  ready task to refactor project-bootstrap Step 5.6 from a per-skill
mirror shape (superpowers detector + deferred projects-meta detector) into
a single generic "skill dependencies check" that walks the canonical
CLAUDE.md template, maps each trigger line to its fulfiller (skill or
plugin), and prints one chat-only recommendation block with install
commands. Hard rule "never auto-install" carries over verbatim.

Decision driven by the [interns-skills-mvp] commit (0eb7dd1): adding
`delegate to interns when allowed` made it visible that every new
canonical trigger would otherwise need its own Step 5.X mirror — doesn't
scale.

[bootstrap-recommend-projects-meta] marked superseded — that task was the
seed of this generalization; it stays in STATUS.md for archaeology and
will be closed once [bootstrap-skill-deps-check] ships.

.tasks/bootstrap-skill-deps-check.md carries the full spec: scope,
key files, decisions log (5 entries), open questions, initial
trigger→fulfiller seed table.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 19:41:04 +03:00
0eb7dd1d7c feat(interns-skills-mvp): ship setup-interns + using-interns v0.1.0; project-bootstrap 1.5.0 -> 1.6.0
setup-interns (v0.1.0) — 8-phase install of the local `interns` MCP server:
detect `.common/lib/interns-mcp/` source, `pip install -e`, write
`.common/secrets/interns.env` with endpoint API keys (gitignored), register
`mcpServers.interns` in `~/.claude.json` with absolute Python interpreter
path + `cwd` so the runtime resolves config relative to project root.
Mirrors setup-projects-meta / setup-context7 confirmation-gate shape.
Description 899 chars (under the 900 budget per
feedback_skill_description_length_limit).

using-interns (v0.1.0) — runtime policy for `mcp__interns__*`. Per-session
permission grant mirrors project-discipline Rule 4: ask-mode default,
conversational grant ("разреши интернов" / "allow interns"), conversational
revoke, always-ask paths for `**/.env`, `**/secrets/**`, `**/*.key`,
`**/.ssh/**`, `**/.aws/credentials` etc with transitive rule (Claude can't
bypass by reading the file with the local Read tool and forwarding content),
cost-cap >$0.10 always asks, session-end automatic reset. Routing hints for
`bulk_text_read` (3+ files or one file >400 lines) and `transcript_distill`
(before .wiki/log.md updates / session summaries). Description 814 chars.

project-bootstrap (1.5.0 -> 1.6.0, MINOR — capability added):
* assets/CLAUDE.md.template: insert `delegate to interns when allowed`
  between `follow project discipline` and `we're on Windows`.
* SKILL.md Step 5: same insertion in inline template + new commentary
  paragraph explaining the trigger, no-op semantics, install pointer.
* SKILL.md Step 5.5: bootstrap-manifest table extended with
  `setup-interns`, `using-interns`, `project-discipline` rows.
* README.md: Workflow Step 5.5 description + See also section both pick up
  the new skills.

Root CLAUDE.md dogfood: `delegate to interns when allowed` line added.
.wiki/log.md decision entry. .tasks/STATUS.md task moved to 🟢 done.
.tasks/interns-skills-mvp.md per-task file with goal / key-files /
decisions log / open questions.

Build + install verified: `dist/{setup-interns,using-interns,
project-bootstrap}.skill` rebuilt; `bash scripts/install.sh ...` succeeded;
harness skill listing shows full descriptions for all three (no H1
fallback) — confirms the description budget held.

Versioning per project-discipline Rule 3:
* setup-interns: 0.1.0 (first edit of unversioned artifact, MAJOR=0).
* using-interns: 0.1.0 (first edit of unversioned artifact, MAJOR=0).
* project-bootstrap: 1.5.0 -> 1.6.0 (MINOR — adds capability without
  breaking existing CLAUDE.md merge or manifest consumers).

Server runtime itself (`.common/lib/interns-mcp/`) is out of scope for this
task — the skills land lifecycle, policy, and bootstrap integration so any
machine where the MCP server is later installed already has Claude's
policy in place.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 17:41:11 +03:00
7464ae4bc4 meta(tasks): create [interns-skills-mvp] in claude-skills 2026-05-05 13:59:09 +00:00
7419c946e5 docs(wiki): publish packages/claude-skills catalog to shared projects-wiki
All 20 skills grouped by purpose (bootstrap / wiki+tasks / MCP / caveman / discovery+platform); cross-linked with setup-using-skill-pair pattern and packages/projects-meta-mcp; published via knowledge_ingest (Gitea commits ae2cc9a3 + 14bdd863 + 001cdd0e on projects-wiki). Local-side: log entry + task closed.
2026-05-01 12:10:07 +03:00