feat: v0.4.0 — Project Wiki, Evolution Pipeline, CLI Consolidation#20
Merged
Conversation
Inject wiki/index.md content and last 10 lines of wiki/log.md into the session-start hook output. Changes applied to both the live hook file and the selfmodel.sh heredoc that generates it. Also adds wiki-protocol.md to the playbook_files consistency check array. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add optional '## Wiki Impact' section to both sprint-template.md copies (playbook and skill/references). Placed after Chaos Gate section. Agents list affected wiki pages; Leader validates in post-merge. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add Step 7.6 POST-MERGE WIKI SYNC after smoke test — extracts changed files, maps to wiki/modules/ pages, logs warnings for stale wiki impact entries. Informational only, does not block merge. Add wiki health audit sub-step (v) to Step 8.5 EVOLUTION CHECK — runs wiki health check every 10 merged sprints, logs warnings when health degrades below 7 or stale pages exceed 5. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…orchestration sync
…nteractive evolve Six changes to selfmodel CLI UX: 1. cmd_dashboard() — new default command: shows status summary, suggests next action based on state (delivered contracts, missing plan, evolution overdue), and appends 8-line command reference with Terminal + Claude Code columns. 2. cmd_init() idempotent — when .selfmodel/ already exists, runs non-destructive adapt logic instead of erroring out. Adapt body extracted into _adapt_existing_project() shared helper. 3. cmd_adapt() deprecated — prints deprecation warning, delegates to cmd_init. Backward compatible. 4. evolve_interactive() — chains detect -> stage -> offer submit with user confirmation gates between phases. Now the default for 'selfmodel evolve' (no flags). 5. Two-tier help — cmd_help_short() for dashboard (8-line quick ref), cmd_help_full() for --help (full reference with slash commands section). 6. main() routing — default changed from 'help' to 'dashboard', 'version' removed from Commands list (--version flag only), added setup/sync aliases, preserved all backward compat. Zero new shellcheck warnings. All existing commands continue to work.
…ve evolve, two-tier help
…elper macOS ships bash 3.2 which doesn't support negative array indices. The unset 'find_args[-1]' pattern crashed wiki module scanning. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Previously install silently skipped CLI when sudo failed, leaving selfmodel not in PATH. Now auto-installs to ~/.local/bin and adds it to shell profile (.zshrc/.bashrc). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Three major features in one release:
.selfmodel/wiki/, woven into init/status/session-hook/sprint-template/orchestration-loop. Zero new commands.selfmodel evolvedetects local improvements, classifies generalizability via 5 heuristics, and submits upstream PRs with evidence.Changes
Project Wiki (Karpathy LLM Wiki pattern)
selfmodel initscaffolds.selfmodel/wiki/with module pages from code scan## Wiki Impactsectionselfmodel statusshows wiki health scorewiki-protocol.mdEvolution-to-PR Pipeline
selfmodel evolve --detectscans local diffs against upstream baseline--stageinteractive classification,--submitwith human approval gate--trackmonitors submitted PRsevolution-protocol.mdwith full JSONL schemaCLI Consolidation
selfmodel(no args) → smart dashboard with next-action suggestionselfmodel initnow idempotent (absorbsadapt)selfmodel adapt→ deprecated aliasselfmodel evolve(no flags) → full interactive pipeline--helpshows full detailBug Fixes
unset 'array[-1]'→_wiki_find_code()helpercmd_evolveexit 1→return 1consistencyFiles Changed (16 files, +1324/-134)
scripts/selfmodel.sh(+953)wiki-protocol.md(playbook + skill/references)evolution-protocol.md(playbook + skill/references)orchestration-loop.md(Steps 7.6, 8.5)session-start.shsprint-template.md(playbook + skill/references)commands/evolve.md,init.md,status.mdREADME.md,CLAUDE.md,CHANGELOG.md,SKILL.mdVERSION(0.3.0 → 0.4.0),install.shTest Plan
selfmodel→ smart dashboard (exit 0)selfmodel --help→ full reference (exit 0)selfmodel --version→ 0.4.0 (exit 0)selfmodel init(existing project) → adapt logic (exit 0)selfmodel adapt→ deprecation warning + init (exit 0)selfmodel status→ dashboard with wiki health (exit 0)selfmodel evolve --status→ pipeline status (exit 0)selfmodel evolve --help→ evolve help (exit 0)selfmodel blah→ error (exit 1)Upgrade Path
Users on v0.3.0 can update:
selfmodel update --remote bash install.sh # refresh slash commands🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com