aiwcli 0.15.5 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +108 -1124
- package/bin/run.js +0 -4
- package/dist/capabilities/branch/adapters.d.ts +2 -0
- package/dist/capabilities/branch/adapters.js +21 -0
- package/dist/capabilities/branch/contracts.d.ts +57 -0
- package/dist/capabilities/branch/contracts.js +1 -0
- package/dist/capabilities/branch/control-plane.d.ts +2 -0
- package/dist/capabilities/branch/control-plane.js +343 -0
- package/dist/capabilities/branch/runtime-core.d.ts +5 -0
- package/dist/capabilities/branch/runtime-core.js +36 -0
- package/dist/capabilities/installation/control-plane/clean-command.d.ts +41 -0
- package/dist/capabilities/installation/control-plane/clean-command.js +196 -0
- package/dist/capabilities/installation/control-plane/clear-command.d.ts +162 -0
- package/dist/capabilities/installation/control-plane/clear-command.js +1249 -0
- package/dist/capabilities/installation/control-plane/init-command.d.ts +81 -0
- package/dist/capabilities/installation/control-plane/init-command.js +449 -0
- package/dist/capabilities/launch/contracts.d.ts +86 -0
- package/dist/capabilities/launch/contracts.js +1 -0
- package/dist/capabilities/launch/control-plane/execute-launch.d.ts +2 -0
- package/dist/capabilities/launch/control-plane/execute-launch.js +261 -0
- package/dist/capabilities/launch/runtime-core/launch-decisions.d.ts +82 -0
- package/dist/capabilities/launch/runtime-core/launch-decisions.js +202 -0
- package/dist/capabilities/launch/runtime-core/launch-options.d.ts +14 -0
- package/dist/capabilities/launch/runtime-core/launch-options.js +69 -0
- package/dist/cli/base-command.d.ts +18 -0
- package/dist/cli/base-command.js +55 -0
- package/dist/commands/branch.d.ts +1 -21
- package/dist/commands/branch.js +25 -417
- package/dist/commands/clean.d.ts +1 -41
- package/dist/commands/clean.js +1 -196
- package/dist/commands/clear.d.ts +1 -161
- package/dist/commands/clear.js +1 -1121
- package/dist/commands/init/index.d.ts +1 -98
- package/dist/commands/init/index.js +4 -478
- package/dist/commands/launch.d.ts +32 -12
- package/dist/commands/launch.js +107 -166
- package/dist/lib/claude-settings-types.d.ts +31 -19
- package/dist/lib/config.js +1 -2
- package/dist/lib/context/context-formatter.d.ts +74 -0
- package/dist/lib/context/context-formatter.js +493 -0
- package/dist/lib/context/context-selector.d.ts +42 -0
- package/dist/lib/context/context-selector.js +451 -0
- package/dist/lib/context/context-store.d.ts +100 -0
- package/dist/lib/context/context-store.js +644 -0
- package/dist/lib/context/plan-manager.d.ts +54 -0
- package/dist/lib/context/plan-manager.js +282 -0
- package/dist/lib/context/task-tracker.d.ts +44 -0
- package/dist/lib/context/task-tracker.js +146 -0
- package/dist/lib/core-ide-base.d.ts +4 -0
- package/dist/lib/core-ide-base.js +77 -0
- package/dist/lib/core-installer.d.ts +5 -0
- package/dist/lib/core-installer.js +33 -0
- package/dist/lib/debug.d.ts +0 -10
- package/dist/lib/debug.js +0 -10
- package/dist/lib/env-sanitizer.d.ts +25 -0
- package/dist/lib/env-sanitizer.js +46 -0
- package/dist/lib/errors.d.ts +0 -13
- package/dist/lib/errors.js +0 -15
- package/dist/lib/git-exclude-manager.d.ts +2 -2
- package/dist/lib/git-exclude-manager.js +3 -3
- package/dist/lib/hooks/context-monitor-logic.d.ts +6 -0
- package/dist/lib/hooks/context-monitor-logic.js +25 -0
- package/dist/lib/hooks/hook-utils.d.ts +143 -0
- package/dist/lib/hooks/hook-utils.js +620 -0
- package/dist/lib/hooks/prompt-binding-logic.d.ts +7 -0
- package/dist/lib/hooks/prompt-binding-logic.js +50 -0
- package/dist/lib/hooks/session-end-logic.d.ts +5 -0
- package/dist/lib/hooks/session-end-logic.js +51 -0
- package/dist/lib/hooks-merger.js +25 -19
- package/dist/lib/ide-path-resolver.d.ts +19 -7
- package/dist/lib/ide-path-resolver.js +25 -9
- package/dist/lib/install-state.d.ts +34 -0
- package/dist/lib/install-state.js +154 -0
- package/dist/lib/json-io.d.ts +12 -0
- package/dist/lib/json-io.js +30 -0
- package/dist/lib/lsp-patch.d.ts +12 -0
- package/dist/lib/lsp-patch.js +156 -0
- package/dist/lib/multiplexer.d.ts +65 -0
- package/dist/lib/multiplexer.js +38 -0
- package/dist/lib/multiplexers/psmux.d.ts +55 -0
- package/dist/lib/multiplexers/psmux.js +324 -0
- package/dist/lib/multiplexers/tmux.d.ts +36 -0
- package/dist/lib/multiplexers/tmux.js +221 -0
- package/dist/lib/multiplexers/wezterm.d.ts +38 -0
- package/dist/lib/multiplexers/wezterm.js +225 -0
- package/dist/lib/mux-utils.d.ts +6 -0
- package/dist/lib/mux-utils.js +36 -0
- package/dist/lib/paths.d.ts +2 -2
- package/dist/lib/paths.js +2 -2
- package/dist/lib/platform-commands.d.ts +27 -0
- package/dist/lib/platform-commands.js +49 -0
- package/dist/lib/prompt-file-manager.d.ts +23 -0
- package/dist/lib/prompt-file-manager.js +41 -0
- package/dist/lib/runtime/agent-launcher.d.ts +67 -0
- package/dist/lib/runtime/agent-launcher.js +262 -0
- package/dist/lib/runtime/aiw-cli.d.ts +39 -0
- package/dist/lib/runtime/aiw-cli.js +76 -0
- package/dist/lib/runtime/atomic-write.d.ts +19 -0
- package/dist/lib/runtime/atomic-write.js +121 -0
- package/dist/lib/runtime/cli-args.d.ts +58 -0
- package/dist/lib/runtime/cli-args.js +200 -0
- package/dist/lib/runtime/constants.d.ts +56 -0
- package/dist/lib/runtime/constants.js +230 -0
- package/dist/lib/runtime/executable-policy.d.ts +16 -0
- package/dist/lib/runtime/executable-policy.js +57 -0
- package/dist/lib/runtime/git-state.d.ts +9 -0
- package/dist/lib/runtime/git-state.js +59 -0
- package/dist/lib/runtime/inference.d.ts +37 -0
- package/dist/lib/runtime/inference.js +251 -0
- package/dist/lib/runtime/lint-dispatch.d.ts +40 -0
- package/dist/lib/runtime/lint-dispatch.js +285 -0
- package/dist/lib/runtime/logger.d.ts +66 -0
- package/dist/lib/runtime/logger.js +201 -0
- package/dist/lib/runtime/models.d.ts +20 -0
- package/dist/lib/runtime/models.js +20 -0
- package/dist/lib/runtime/platform-adapter.d.ts +7 -0
- package/dist/lib/runtime/platform-adapter.js +21 -0
- package/dist/lib/runtime/preflight.d.ts +24 -0
- package/dist/lib/runtime/preflight.js +65 -0
- package/dist/lib/runtime/sentinel-ipc.d.ts +14 -0
- package/dist/lib/runtime/sentinel-ipc.js +67 -0
- package/dist/lib/runtime/state-io.d.ts +31 -0
- package/dist/lib/runtime/state-io.js +179 -0
- package/dist/lib/runtime/stop-words.d.ts +20 -0
- package/dist/lib/runtime/stop-words.js +150 -0
- package/dist/lib/runtime/subprocess-utils.d.ts +29 -0
- package/dist/lib/runtime/subprocess-utils.js +96 -0
- package/dist/lib/runtime/tmux-preflight.d.ts +13 -0
- package/dist/lib/runtime/tmux-preflight.js +78 -0
- package/dist/lib/runtime/utils.d.ts +62 -0
- package/dist/lib/runtime/utils.js +192 -0
- package/dist/lib/schemas.d.ts +250 -0
- package/dist/lib/schemas.js +216 -0
- package/dist/lib/sentinel-manager.d.ts +32 -0
- package/dist/lib/sentinel-manager.js +62 -0
- package/dist/lib/sentinel-wrapper.d.ts +10 -0
- package/dist/lib/sentinel-wrapper.js +29 -0
- package/dist/lib/settings-hierarchy.js +3 -20
- package/dist/lib/shell-adapters/bash-adapter.d.ts +18 -0
- package/dist/lib/shell-adapters/bash-adapter.js +69 -0
- package/dist/lib/shell-adapters/index.d.ts +5 -0
- package/dist/lib/shell-adapters/index.js +7 -0
- package/dist/lib/shell-adapters/powershell-adapter.d.ts +18 -0
- package/dist/lib/shell-adapters/powershell-adapter.js +62 -0
- package/dist/lib/shell-adapters/shell-adapter.d.ts +45 -0
- package/dist/lib/shell-adapters/shell-adapter.js +5 -0
- package/dist/lib/shell-quoting.d.ts +5 -0
- package/dist/lib/shell-quoting.js +17 -0
- package/dist/lib/spawn-errors.d.ts +9 -0
- package/dist/lib/spawn-errors.js +29 -0
- package/dist/lib/spawn.js +5 -11
- package/dist/lib/spinner.d.ts +0 -5
- package/dist/lib/spinner.js +0 -16
- package/dist/lib/template-installer.d.ts +14 -5
- package/dist/lib/template-installer.js +40 -38
- package/dist/lib/template-resolver.d.ts +6 -7
- package/dist/lib/template-resolver.js +26 -21
- package/dist/lib/template-settings-reconstructor.d.ts +7 -2
- package/dist/lib/template-settings-reconstructor.js +76 -45
- package/dist/lib/terminal-strategy.d.ts +12 -0
- package/dist/lib/terminal-strategy.js +55 -0
- package/dist/lib/terminal.d.ts +34 -4
- package/dist/lib/terminal.js +192 -119
- package/dist/lib/tmux-pane-placement.d.ts +17 -0
- package/dist/lib/tmux-pane-placement.js +58 -0
- package/dist/lib/tmux-primitives.d.ts +3 -0
- package/dist/lib/tmux-primitives.js +11 -0
- package/dist/lib/tmux-session.d.ts +32 -0
- package/dist/lib/tmux-session.js +87 -0
- package/dist/lib/tty-detection.js +1 -1
- package/dist/lib/types.d.ts +168 -0
- package/dist/lib/types.js +6 -0
- package/dist/lib/version.d.ts +1 -1
- package/dist/lib/version.js +1 -1
- package/dist/lib/windsurf-hooks-hierarchy.js +6 -23
- package/dist/platform/launch.d.ts +11 -0
- package/dist/platform/launch.js +11 -0
- package/dist/templates/CLAUDE.md +30 -40
- package/dist/templates/cc-native/.claude/settings.json +26 -36
- package/dist/templates/cc-native/CC-NATIVE-README.md +1 -1
- package/dist/templates/cc-native/TEMPLATE-SCHEMA.md +20 -12
- package/dist/templates/cc-native/_cc-native/cc-native.config.json +2 -6
- package/dist/templates/cc-native/_cc-native/hooks/CLAUDE.md +39 -59
- package/dist/templates/cc-native/_cc-native/hooks/cc-native-plan-review.ts +9 -11
- package/dist/templates/cc-native/_cc-native/hooks/enhance_plan_post_subagent.ts +2 -2
- package/dist/templates/cc-native/_cc-native/hooks/enhance_plan_post_write.ts +4 -5
- package/dist/templates/cc-native/_cc-native/hooks/mark_questions_asked.ts +4 -4
- package/dist/templates/cc-native/_cc-native/hooks/plan_questions_early.ts +2 -27
- package/dist/templates/cc-native/_cc-native/hooks/validate_task_prompt.ts +7 -7
- package/dist/templates/cc-native/_cc-native/lib-ts/.mocharc.json +9 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/aggregate-agents.test.ts +118 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/artifacts.test.ts +234 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/cc-native-state.test.ts +170 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/cli-output-parser.test.ts +73 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/config.test.ts +64 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/constants.test.ts +40 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/debug.test.ts +42 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/exports.test.ts +58 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/helpers.ts +107 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/hooks/add-plan-context.hook.test.ts +97 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/hooks/plan-questions.hook.test.ts +81 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/hooks/plan-review.hook.test.ts +71 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/json-parser.test.ts +99 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/orchestrator-agent.test.ts +288 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/orchestrator.test.ts +48 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/reviewers.test.ts +32 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/state.test.ts +124 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/__tests__/verdict.test.ts +93 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/agent-selection.ts +163 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/aggregate-agents.ts +6 -14
- package/dist/templates/cc-native/_cc-native/{artifacts/lib → lib-ts/artifacts}/format.ts +597 -599
- package/dist/templates/cc-native/_cc-native/{artifacts/lib → lib-ts/artifacts}/index.ts +26 -26
- package/dist/templates/cc-native/_cc-native/{artifacts/lib → lib-ts/artifacts}/tracker.ts +106 -107
- package/dist/templates/cc-native/_cc-native/{artifacts/lib → lib-ts/artifacts}/write.ts +118 -119
- package/dist/templates/cc-native/_cc-native/lib-ts/artifacts.ts +21 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/cc-native-state.ts +17 -16
- package/dist/templates/cc-native/_cc-native/lib-ts/cli-output-parser.ts +132 -10
- package/dist/templates/cc-native/_cc-native/lib-ts/config.ts +1 -1
- package/dist/templates/cc-native/_cc-native/lib-ts/constants.ts +6 -6
- package/dist/templates/cc-native/_cc-native/lib-ts/corroboration.ts +119 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/debug.ts +2 -3
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/graduation.ts +132 -132
- package/dist/templates/cc-native/_cc-native/lib-ts/index.ts +88 -86
- package/dist/templates/cc-native/_cc-native/lib-ts/json-parser.ts +5 -6
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/orchestrator.ts +70 -70
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/output-builder.ts +130 -121
- package/dist/templates/cc-native/_cc-native/lib-ts/package-lock.json +1679 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/package.json +24 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/plan-discovery.ts +5 -5
- package/dist/templates/cc-native/_cc-native/lib-ts/plan-enhancement.ts +1 -6
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/plan-questions.ts +101 -101
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/review-pipeline.ts +511 -543
- package/dist/templates/cc-native/_cc-native/lib-ts/reviewers/__tests__/agent-providers.test.ts +262 -0
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/agent.ts +71 -85
- package/dist/templates/{_shared/lib-ts/agent-exec → cc-native/_cc-native/lib-ts/reviewers/base}/base-agent.ts +138 -150
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/index.ts +12 -12
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/providers/claude-agent.ts +66 -57
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/providers/codex-agent.ts +185 -200
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/providers/gemini-agent.ts +39 -40
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/providers/orchestrator-claude-agent.ts +196 -225
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/schemas.ts +201 -201
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/reviewers/types.ts +21 -23
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/__tests__/hyde.test.ts +365 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/__tests__/ollama-client.test.ts +223 -0
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/embedding-indexer.ts +12 -16
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/hyde.ts +3 -2
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/index.ts +31 -31
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/logger.ts +7 -8
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/ollama-client.ts +7 -9
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/retrieval-pipeline.ts +16 -19
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/transcript-indexer.ts +37 -41
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/transcript-loader.ts +33 -43
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/transcript-searcher.ts +20 -20
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/types.ts +9 -10
- package/dist/templates/cc-native/_cc-native/lib-ts/rlm/vector-store.ts +3 -4
- package/dist/templates/cc-native/_cc-native/lib-ts/settings.ts +50 -126
- package/dist/templates/cc-native/_cc-native/lib-ts/state.ts +20 -22
- package/dist/templates/cc-native/_cc-native/lib-ts/tsconfig.json +2 -2
- package/dist/templates/cc-native/_cc-native/lib-ts/types.ts +14 -89
- package/dist/templates/cc-native/_cc-native/{plan-review/lib → lib-ts}/verdict.ts +72 -72
- package/dist/templates/cc-native/_cc-native/plan-review/CLAUDE.md +38 -1
- package/dist/templates/cc-native/_cc-native/plan-review/lib/__tests__/agent-selection.test.ts +345 -0
- package/dist/templates/cc-native/_cc-native/plan-review/lib/__tests__/preflight.test.ts +344 -0
- package/dist/templates/cc-native/_cc-native/plan-review/lib/agent-selection.ts +38 -16
- package/dist/templates/cc-native/_cc-native/plan-review/lib/preflight.ts +56 -26
- package/dist/templates/cc-native/_cc-native/scripts/council_debate.ts +242 -0
- package/dist/templates/cc-native/_cc-native/scripts/council_debate_simple.ts +294 -0
- package/dist/templates/cc-native/_cc-native/{plan-review/workflows → workflows}/specdev.md +9 -9
- package/dist/templates/core/.claude/skills/codex/SKILL.md +25 -0
- package/dist/templates/core/.claude/skills/devin/SKILL.md +25 -0
- package/dist/templates/core/.claude/skills/handoff/SKILL.md +11 -0
- package/dist/templates/core/.claude/skills/handoff-resume/SKILL.md +11 -0
- package/dist/templates/core/.claude/skills/meta-plan/SKILL.md +13 -0
- package/dist/templates/core/.codex/skills/codex/SKILL.md +13 -0
- package/dist/templates/core/.codex/skills/devin/SKILL.md +19 -0
- package/dist/templates/core/.codex/skills/handoff/SKILL.md +11 -0
- package/dist/templates/core/.codex/skills/handoff-resume/SKILL.md +11 -0
- package/dist/templates/core/.codex/skills/meta-plan/SKILL.md +13 -0
- package/dist/templates/core/.devin/AGENTS.md +5 -0
- package/dist/templates/core/.devin/config.json +12 -0
- package/dist/templates/core/.devin/skills/codex/SKILL.md +19 -0
- package/dist/templates/core/.devin/skills/devin/SKILL.md +13 -0
- package/dist/templates/core/.devin/skills/handoff/SKILL.md +11 -0
- package/dist/templates/core/.devin/skills/handoff-resume/SKILL.md +11 -0
- package/dist/templates/core/.devin/skills/meta-plan/SKILL.md +13 -0
- package/dist/templates/core/.windsurf/workflows/handoff-resume.md +9 -0
- package/dist/templates/{_shared → core}/.windsurf/workflows/handoff.md +1 -1
- package/dist/templates/{_shared → core}/.windsurf/workflows/meta-plan.md +1 -1
- package/dist/templates/core/hooks-ts/_utils/git-state.ts +2 -0
- package/dist/templates/{_shared → core}/hooks-ts/archive_plan.ts +15 -44
- package/dist/templates/core/hooks-ts/codex_explorer.ts +160 -0
- package/dist/templates/{_shared → core}/hooks-ts/context_monitor.ts +23 -55
- package/dist/templates/{_shared → core}/hooks-ts/file-suggestion.ts +5 -22
- package/dist/templates/{_shared → core}/hooks-ts/lint_after_edit.ts +7 -9
- package/dist/templates/core/hooks-ts/pre_compact.ts +36 -0
- package/dist/templates/{_shared → core}/hooks-ts/session_end.ts +38 -78
- package/dist/templates/{_shared → core}/hooks-ts/session_start.ts +5 -5
- package/dist/templates/core/hooks-ts/task_create_capture.ts +32 -0
- package/dist/templates/{_shared → core}/hooks-ts/task_update_capture.ts +9 -24
- package/dist/templates/core/hooks-ts/user_prompt_submit.ts +46 -0
- package/dist/templates/{_shared → core}/lib-ts/CLAUDE.md +27 -16
- package/dist/templates/{_shared → core}/lib-ts/context/CLAUDE.md +9 -6
- package/dist/templates/{_shared → core}/lib-ts/context/context-formatter.ts +16 -21
- package/dist/templates/{_shared → core}/lib-ts/context/context-selector.ts +8 -6
- package/dist/templates/{_shared → core}/lib-ts/context/context-store.ts +59 -20
- package/dist/templates/{_shared → core}/lib-ts/context/plan-manager.ts +19 -15
- package/dist/templates/{_shared → core}/lib-ts/context/task-tracker.ts +3 -3
- package/dist/templates/core/lib-ts/hooks/context-monitor-logic.ts +32 -0
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/hooks}/hook-utils.ts +179 -41
- package/dist/templates/core/lib-ts/hooks/prompt-binding-logic.ts +80 -0
- package/dist/templates/core/lib-ts/hooks/session-end-logic.ts +82 -0
- package/dist/templates/core/lib-ts/package.json +19 -0
- package/dist/templates/core/lib-ts/runtime/agent-launcher.ts +369 -0
- package/dist/templates/core/lib-ts/runtime/aiw-cli.ts +108 -0
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/atomic-write.ts +12 -7
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/cli-args.ts +24 -8
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/constants.ts +326 -324
- package/dist/templates/core/lib-ts/runtime/executable-policy.ts +89 -0
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/git-state.ts +6 -4
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/inference.ts +60 -23
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/lint-dispatch.ts +25 -23
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/logger.ts +32 -29
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/models.ts +9 -2
- package/dist/templates/core/lib-ts/runtime/platform-adapter.ts +33 -0
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/preflight.ts +4 -3
- package/dist/templates/core/lib-ts/runtime/sentinel-ipc.ts +91 -0
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/state-io.ts +20 -11
- package/dist/templates/core/lib-ts/runtime/stop-words.ts +185 -0
- package/dist/templates/core/lib-ts/runtime/subprocess-utils.ts +147 -0
- package/dist/templates/core/lib-ts/runtime/tmux-preflight.ts +93 -0
- package/dist/templates/{_shared/lib-ts/base → core/lib-ts/runtime}/utils.ts +34 -4
- package/dist/templates/core/lib-ts/schemas.ts +233 -0
- package/dist/templates/{_shared → core}/lib-ts/templates/formatters.ts +7 -5
- package/dist/templates/{_shared → core}/lib-ts/templates/plan-context.ts +2 -1
- package/dist/templates/{_shared → core}/lib-ts/tsconfig.json +3 -1
- package/dist/templates/{_shared → core}/lib-ts/types.ts +78 -77
- package/dist/templates/core/scripts/resolve-run.ts +93 -0
- package/dist/templates/{_shared → core}/scripts/resolve_context.ts +3 -3
- package/dist/templates/{_shared → core}/scripts/status_line.ts +26 -21
- package/dist/templates/core/skills/codex/CLAUDE.md +83 -0
- package/dist/templates/{_shared → core}/skills/codex/SKILL.md +27 -18
- package/dist/templates/{_shared → core}/skills/codex/lib/codex-watcher.ts +79 -113
- package/dist/templates/{_shared → core}/skills/codex/scripts/launch-codex.ts +134 -148
- package/dist/templates/{_shared → core}/skills/codex/scripts/watch-codex.ts +6 -4
- package/dist/templates/core/skills/devin/CLAUDE.md +122 -0
- package/dist/templates/core/skills/devin/SKILL.md +73 -0
- package/dist/templates/core/skills/devin/lib/devin-watcher.ts +300 -0
- package/dist/templates/core/skills/devin/scripts/launch-devin.ts +258 -0
- package/dist/templates/{_shared → core}/skills/handoff-system/CLAUDE.md +436 -433
- package/dist/templates/{_shared → core}/skills/handoff-system/lib/document-generator.ts +9 -7
- package/dist/templates/{_shared → core}/skills/handoff-system/lib/handoff-reader.ts +6 -4
- package/dist/templates/{_shared → core}/skills/handoff-system/scripts/resume_handoff.ts +10 -8
- package/dist/templates/{_shared → core}/skills/handoff-system/scripts/save_handoff.ts +12 -10
- package/dist/templates/{_shared → core}/skills/handoff-system/workflows/handoff-resume.md +2 -2
- package/dist/templates/{_shared → core}/skills/handoff-system/workflows/handoff.md +6 -5
- package/dist/templates/{_shared → core}/skills/meta-plan/CLAUDE.md +2 -1
- package/dist/templates/{_shared → core}/skills/meta-plan/workflows/meta-plan.md +8 -7
- package/oclif.manifest.json +89 -13
- package/package.json +13 -12
- package/dist/lib/base-command.d.ts +0 -114
- package/dist/lib/base-command.js +0 -153
- package/dist/lib/env-compat.d.ts +0 -18
- package/dist/lib/env-compat.js +0 -23
- package/dist/lib/stdin.d.ts +0 -48
- package/dist/lib/stdin.js +0 -60
- package/dist/templates/_shared/.claude/settings.json +0 -120
- package/dist/templates/_shared/.claude/skills/codex/SKILL.md +0 -35
- package/dist/templates/_shared/.claude/skills/handoff/SKILL.md +0 -13
- package/dist/templates/_shared/.claude/skills/handoff-resume/SKILL.md +0 -13
- package/dist/templates/_shared/.claude/skills/meta-plan/SKILL.md +0 -43
- package/dist/templates/_shared/.codex/workflows/codex.md +0 -11
- package/dist/templates/_shared/.codex/workflows/handoff.md +0 -226
- package/dist/templates/_shared/.codex/workflows/meta-plan.md +0 -347
- package/dist/templates/_shared/hooks-ts/_utils/git-state.ts +0 -2
- package/dist/templates/_shared/hooks-ts/pre_compact.ts +0 -49
- package/dist/templates/_shared/hooks-ts/task_create_capture.ts +0 -48
- package/dist/templates/_shared/hooks-ts/user_prompt_submit.ts +0 -93
- package/dist/templates/_shared/lib-ts/agent-exec/backends/headless.ts +0 -33
- package/dist/templates/_shared/lib-ts/agent-exec/backends/index.ts +0 -6
- package/dist/templates/_shared/lib-ts/agent-exec/backends/tmux.ts +0 -119
- package/dist/templates/_shared/lib-ts/agent-exec/execution-backend.ts +0 -50
- package/dist/templates/_shared/lib-ts/agent-exec/index.ts +0 -6
- package/dist/templates/_shared/lib-ts/agent-exec/structured-output.ts +0 -166
- package/dist/templates/_shared/lib-ts/base/launchers/tmux-launcher.ts +0 -173
- package/dist/templates/_shared/lib-ts/base/launchers/window-launcher.ts +0 -93
- package/dist/templates/_shared/lib-ts/base/launchers/wt-launcher.ts +0 -64
- package/dist/templates/_shared/lib-ts/base/pane-launcher.ts +0 -55
- package/dist/templates/_shared/lib-ts/base/sentinel-ipc.ts +0 -87
- package/dist/templates/_shared/lib-ts/base/stop-words.ts +0 -184
- package/dist/templates/_shared/lib-ts/base/subprocess-utils.ts +0 -249
- package/dist/templates/_shared/lib-ts/base/tmux-driver.ts +0 -341
- package/dist/templates/_shared/lib-ts/base/tmux-pane-placement.ts +0 -78
- package/dist/templates/_shared/lib-ts/package.json +0 -20
- package/dist/templates/_shared/scripts/resolve-run.ts +0 -62
- package/dist/templates/_shared/skills/codex/CLAUDE.md +0 -70
- package/dist/templates/cc-native/_cc-native/CLAUDE.md +0 -73
- package/dist/templates/cc-native/_cc-native/artifacts/CLAUDE.md +0 -64
- package/dist/templates/cc-native/_cc-native/lib-ts/CLAUDE.md +0 -70
- package/dist/templates/cc-native/_cc-native/plan-review/CODING-STANDARDS-CHECKLIST.md +0 -75
- package/dist/templates/cc-native/_cc-native/plan-review/agents/CLAUDE.md +0 -143
- package/dist/templates/cc-native/_cc-native/plan-review/agents/PLAN-ORCHESTRATOR.md +0 -213
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-questions/PLAN-QUESTIONER.md +0 -70
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/ARCH-EVOLUTION.md +0 -62
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/ARCH-PATTERNS.md +0 -61
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/ARCH-STRUCTURE.md +0 -62
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/ASSUMPTION-TRACER.md +0 -56
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/CLARITY-AUDITOR.md +0 -53
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/COMPLETENESS-FEASIBILITY.md +0 -66
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/COMPLETENESS-GAPS.md +0 -70
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/COMPLETENESS-ORDERING.md +0 -62
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/CONSTRAINT-VALIDATOR.md +0 -72
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/DESIGN-ADR-VALIDATOR.md +0 -61
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/DESIGN-SCALE-MATCHER.md +0 -64
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/DEVILS-ADVOCATE.md +0 -56
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/DOCUMENTATION-PHILOSOPHY.md +0 -86
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/HANDOFF-READINESS.md +0 -59
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/HIDDEN-COMPLEXITY.md +0 -58
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/INCREMENTAL-DELIVERY.md +0 -66
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/RISK-DEPENDENCY.md +0 -62
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/RISK-FMEA.md +0 -66
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/RISK-PREMORTEM.md +0 -71
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/RISK-REVERSIBILITY.md +0 -74
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/SCOPE-BOUNDARY.md +0 -77
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/SIMPLICITY-GUARDIAN.md +0 -62
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/SKEPTIC.md +0 -68
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/TESTDRIVEN-BEHAVIOR-AUDITOR.md +0 -61
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/TESTDRIVEN-CHARACTERIZATION.md +0 -71
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/TESTDRIVEN-FIRST-VALIDATOR.md +0 -61
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/TESTDRIVEN-PYRAMID-ANALYZER.md +0 -61
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/TRADEOFF-COSTS.md +0 -67
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/TRADEOFF-STAKEHOLDERS.md +0 -65
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/VERIFY-COVERAGE.md +0 -74
- package/dist/templates/cc-native/_cc-native/plan-review/agents/plan-review/VERIFY-STRENGTH.md +0 -69
- package/dist/templates/cc-native/_cc-native/plan-review/lib/corroboration.ts +0 -172
- package/dist/templates/cc-native/_cc-native/plan-review/lib/reviewers/base/base-agent.ts +0 -7
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared type definitions for the lib-ts library.
|
|
3
|
+
* All field names use snake_case for JSON backward compatibility with state.json.
|
|
4
|
+
* See SPEC.md §1 for full behavioral specification.
|
|
5
|
+
*/
|
|
6
|
+
export type Mode = "active" | "has_staged_work" | "idle";
|
|
7
|
+
export interface ContextState {
|
|
8
|
+
created_at: string;
|
|
9
|
+
/** @deprecated Use work_consumed instead */
|
|
10
|
+
handoff_consumed?: boolean;
|
|
11
|
+
handoff_path: null | string;
|
|
12
|
+
id: string;
|
|
13
|
+
last_active: string;
|
|
14
|
+
last_session: LastSession | null;
|
|
15
|
+
method: string;
|
|
16
|
+
mode: Mode;
|
|
17
|
+
next_artifact_type: "handoff" | "plan" | null;
|
|
18
|
+
plan_anchors: string[];
|
|
19
|
+
/** @deprecated Use work_consumed instead */
|
|
20
|
+
plan_consumed?: boolean;
|
|
21
|
+
plan_hash: null | string;
|
|
22
|
+
plan_hash_consumed: null | string;
|
|
23
|
+
plan_id: null | string;
|
|
24
|
+
plan_path: null | string;
|
|
25
|
+
plan_signature: null | string;
|
|
26
|
+
session_ids: string[];
|
|
27
|
+
status: "active" | "completed";
|
|
28
|
+
summary: string;
|
|
29
|
+
tags: string[];
|
|
30
|
+
tasks: Task[];
|
|
31
|
+
work_consumed: boolean;
|
|
32
|
+
}
|
|
33
|
+
export interface GitState {
|
|
34
|
+
branch?: string;
|
|
35
|
+
last_commit_short?: string;
|
|
36
|
+
uncommitted_files?: string[];
|
|
37
|
+
}
|
|
38
|
+
export interface LastSession {
|
|
39
|
+
context_remaining_pct?: number;
|
|
40
|
+
context_warnings_fired?: number[];
|
|
41
|
+
git_state?: GitState;
|
|
42
|
+
save_reason?: string;
|
|
43
|
+
saved_at?: string;
|
|
44
|
+
session_id?: string;
|
|
45
|
+
transcript_path?: string;
|
|
46
|
+
}
|
|
47
|
+
export interface Task {
|
|
48
|
+
active_form: string;
|
|
49
|
+
completed_at: null | string;
|
|
50
|
+
created_at: string;
|
|
51
|
+
description: string;
|
|
52
|
+
evidence: string;
|
|
53
|
+
files_changed: string[];
|
|
54
|
+
id: string;
|
|
55
|
+
session_id?: string;
|
|
56
|
+
status: "blocked" | "completed" | "in_progress" | "pending";
|
|
57
|
+
subject: string;
|
|
58
|
+
work_summary: string;
|
|
59
|
+
}
|
|
60
|
+
export interface IndexEntry {
|
|
61
|
+
last_active: string;
|
|
62
|
+
mode: string;
|
|
63
|
+
summary: string;
|
|
64
|
+
}
|
|
65
|
+
export interface IndexFile {
|
|
66
|
+
contexts: Record<string, IndexEntry>;
|
|
67
|
+
sessions: Record<string, string>;
|
|
68
|
+
updated_at: string;
|
|
69
|
+
version: "3.0";
|
|
70
|
+
}
|
|
71
|
+
export interface LogEntry {
|
|
72
|
+
component?: string;
|
|
73
|
+
data?: unknown;
|
|
74
|
+
hook: string;
|
|
75
|
+
level: "debug" | "error" | "info" | "warn";
|
|
76
|
+
msg: string;
|
|
77
|
+
tb?: string;
|
|
78
|
+
ts: string;
|
|
79
|
+
}
|
|
80
|
+
export interface HookInput {
|
|
81
|
+
context_window?: {
|
|
82
|
+
context_window_size?: number;
|
|
83
|
+
current_usage?: {
|
|
84
|
+
cache_creation_input_tokens?: number;
|
|
85
|
+
cache_read_input_tokens?: number;
|
|
86
|
+
input_tokens?: number;
|
|
87
|
+
output_tokens?: number;
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
cwd?: string;
|
|
91
|
+
hook_event_name: string;
|
|
92
|
+
permission_mode?: string;
|
|
93
|
+
session_id?: string;
|
|
94
|
+
source?: string;
|
|
95
|
+
tool_input?: Record<string, unknown>;
|
|
96
|
+
tool_name?: string;
|
|
97
|
+
tool_result?: string;
|
|
98
|
+
transcript_path?: string;
|
|
99
|
+
}
|
|
100
|
+
export interface HookOutput {
|
|
101
|
+
decision?: "block";
|
|
102
|
+
hookSpecificOutput?: {
|
|
103
|
+
additionalContext?: string;
|
|
104
|
+
hookEventName?: string;
|
|
105
|
+
permissionDecision?: "allow" | "ask" | "deny";
|
|
106
|
+
permissionDecisionReason?: string;
|
|
107
|
+
updatedInput?: Record<string, unknown>;
|
|
108
|
+
};
|
|
109
|
+
reason?: string;
|
|
110
|
+
}
|
|
111
|
+
export interface PermissionRequestOutput {
|
|
112
|
+
decision: {
|
|
113
|
+
behavior: "allow" | "deny";
|
|
114
|
+
message?: string;
|
|
115
|
+
updatedInput?: Record<string, unknown>;
|
|
116
|
+
updatedPermissions?: Record<string, unknown>;
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
export interface InferenceResult {
|
|
120
|
+
error?: string;
|
|
121
|
+
latency_ms: number;
|
|
122
|
+
output: string;
|
|
123
|
+
success: boolean;
|
|
124
|
+
}
|
|
125
|
+
export interface HandoffDocument {
|
|
126
|
+
active_tasks: Task[];
|
|
127
|
+
completed_tasks_this_session: Array<{
|
|
128
|
+
subject: string;
|
|
129
|
+
}>;
|
|
130
|
+
context_folder: string;
|
|
131
|
+
context_id: string;
|
|
132
|
+
context_summary: string;
|
|
133
|
+
created_at: string;
|
|
134
|
+
events_log_path: string;
|
|
135
|
+
file_path: null | string;
|
|
136
|
+
important_notes: string[];
|
|
137
|
+
next_steps: string[];
|
|
138
|
+
plan_path: null | string;
|
|
139
|
+
reason: string;
|
|
140
|
+
session_id: string;
|
|
141
|
+
work_summary: string;
|
|
142
|
+
}
|
|
143
|
+
export interface HandoffSections {
|
|
144
|
+
completedWork: null | string;
|
|
145
|
+
context: null | string;
|
|
146
|
+
deadEnds: null | string;
|
|
147
|
+
decisions: null | string;
|
|
148
|
+
index: null | string;
|
|
149
|
+
pending: null | string;
|
|
150
|
+
plan: null | string;
|
|
151
|
+
}
|
|
152
|
+
export interface CaretCommand {
|
|
153
|
+
ends: string[];
|
|
154
|
+
new_context_desc: null | string;
|
|
155
|
+
remaining_prompt: string;
|
|
156
|
+
select: null | string;
|
|
157
|
+
}
|
|
158
|
+
export type { PreflightCheckResult, PreflightCommandConfig } from "./runtime/preflight.js";
|
|
159
|
+
/** Configuration for a CLI review agent */
|
|
160
|
+
export interface AgentConfig {
|
|
161
|
+
categories: string[];
|
|
162
|
+
description: string;
|
|
163
|
+
focus: string;
|
|
164
|
+
model: string;
|
|
165
|
+
name: string;
|
|
166
|
+
provider: string;
|
|
167
|
+
system_prompt: string;
|
|
168
|
+
}
|
package/dist/lib/version.d.ts
CHANGED
|
@@ -51,7 +51,7 @@ interface VersionCheckResult {
|
|
|
51
51
|
* - "claude 0.1.0"
|
|
52
52
|
* - "claude version 0.1.0"
|
|
53
53
|
*
|
|
54
|
-
* Returns null on
|
|
54
|
+
* Returns null on unknown failure (command not found, invalid output, etc.)
|
|
55
55
|
* to support graceful degradation.
|
|
56
56
|
*
|
|
57
57
|
* @returns Version string (e.g., "0.1.0") or null if unavailable
|
package/dist/lib/version.js
CHANGED
|
@@ -45,7 +45,7 @@ const INCOMPATIBLE_VERSIONS = new Set(['0.0.9']);
|
|
|
45
45
|
* - "claude 0.1.0"
|
|
46
46
|
* - "claude version 0.1.0"
|
|
47
47
|
*
|
|
48
|
-
* Returns null on
|
|
48
|
+
* Returns null on unknown failure (command not found, invalid output, etc.)
|
|
49
49
|
* to support graceful degradation.
|
|
50
50
|
*
|
|
51
51
|
* @returns Version string (e.g., "0.1.0") or null if unavailable
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { pathExists } from './paths.js';
|
|
1
|
+
import { IdePathResolver } from './ide-path-resolver.js';
|
|
2
|
+
import { readJsonFile, writeJsonFile } from './json-io.js';
|
|
4
3
|
/**
|
|
5
4
|
* Read Windsurf hooks from file
|
|
6
5
|
*
|
|
@@ -8,14 +7,7 @@ import { pathExists } from './paths.js';
|
|
|
8
7
|
* @returns Parsed hooks or undefined if file doesn't exist or is invalid
|
|
9
8
|
*/
|
|
10
9
|
export async function readWindsurfHooks(path) {
|
|
11
|
-
|
|
12
|
-
const content = await fs.readFile(path, 'utf8');
|
|
13
|
-
return JSON.parse(content);
|
|
14
|
-
}
|
|
15
|
-
catch {
|
|
16
|
-
// File doesn't exist or invalid JSON
|
|
17
|
-
return undefined;
|
|
18
|
-
}
|
|
10
|
+
return readJsonFile(path);
|
|
19
11
|
}
|
|
20
12
|
/**
|
|
21
13
|
* Write Windsurf hooks to file
|
|
@@ -28,17 +20,7 @@ export async function readWindsurfHooks(path) {
|
|
|
28
20
|
* @throws Error if write fails
|
|
29
21
|
*/
|
|
30
22
|
export async function writeWindsurfHooks(path, hooks) {
|
|
31
|
-
|
|
32
|
-
const dir = join(path, '..');
|
|
33
|
-
await fs.mkdir(dir, { recursive: true });
|
|
34
|
-
// Backup existing file if it exists
|
|
35
|
-
if (await pathExists(path)) {
|
|
36
|
-
const backupPath = `${path}.backup`;
|
|
37
|
-
await fs.copyFile(path, backupPath);
|
|
38
|
-
}
|
|
39
|
-
// Write hooks with pretty formatting
|
|
40
|
-
const content = JSON.stringify(hooks, null, 2);
|
|
41
|
-
await fs.writeFile(path, content, 'utf8');
|
|
23
|
+
return writeJsonFile(path, hooks, { backup: true });
|
|
42
24
|
}
|
|
43
25
|
/**
|
|
44
26
|
* Get the target hooks file for template hook merging
|
|
@@ -51,5 +33,6 @@ export async function writeWindsurfHooks(path, hooks) {
|
|
|
51
33
|
* @returns Path to target hooks file
|
|
52
34
|
*/
|
|
53
35
|
export function getTargetHooksFile(projectDir) {
|
|
54
|
-
|
|
36
|
+
const resolver = new IdePathResolver(projectDir);
|
|
37
|
+
return resolver.getWindsurfHooks();
|
|
55
38
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { ProcessSpawnError } from '../lib/errors.js';
|
|
2
|
+
export { ensureLspPatch } from '../lib/lsp-patch.js';
|
|
3
|
+
export { detectMultiplexer, type LaunchResult, type SplitDirection } from '../lib/multiplexer.js';
|
|
4
|
+
export { REPL_NESTING_VARS } from '../lib/env-sanitizer.js';
|
|
5
|
+
export { readSentinelExitCode, waitForSentinelFile } from '../lib/runtime/sentinel-ipc.js';
|
|
6
|
+
export { findExecutable } from '../lib/runtime/subprocess-utils.js';
|
|
7
|
+
export { quoteForSh } from '../lib/shell-quoting.js';
|
|
8
|
+
export { spawnProcess } from '../lib/spawn.js';
|
|
9
|
+
export { launchTerminal } from '../lib/terminal.js';
|
|
10
|
+
export { configureTmuxSession, findToolPath } from '../lib/tmux-session.js';
|
|
11
|
+
export { checkVersionCompatibility, getClaudeCodeVersion } from '../lib/version.js';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { ProcessSpawnError } from '../lib/errors.js';
|
|
2
|
+
export { ensureLspPatch } from '../lib/lsp-patch.js';
|
|
3
|
+
export { detectMultiplexer } from '../lib/multiplexer.js';
|
|
4
|
+
export { REPL_NESTING_VARS } from '../lib/env-sanitizer.js';
|
|
5
|
+
export { readSentinelExitCode, waitForSentinelFile } from '../lib/runtime/sentinel-ipc.js';
|
|
6
|
+
export { findExecutable } from '../lib/runtime/subprocess-utils.js';
|
|
7
|
+
export { quoteForSh } from '../lib/shell-quoting.js';
|
|
8
|
+
export { spawnProcess } from '../lib/spawn.js';
|
|
9
|
+
export { launchTerminal } from '../lib/terminal.js';
|
|
10
|
+
export { configureTmuxSession, findToolPath } from '../lib/tmux-session.js';
|
|
11
|
+
export { checkVersionCompatibility, getClaudeCodeVersion } from '../lib/version.js';
|
package/dist/templates/CLAUDE.md
CHANGED
|
@@ -6,8 +6,8 @@ Write all method outputs to `_output/{method}/`:
|
|
|
6
6
|
|
|
7
7
|
```
|
|
8
8
|
_output/
|
|
9
|
-
├──
|
|
10
|
-
├──
|
|
9
|
+
├── cc-native/plans/ # Example method artifacts
|
|
10
|
+
├── planning-with-files/plans/ # Example method artifacts
|
|
11
11
|
└── {method}/{subdir}/ # Other method outputs
|
|
12
12
|
```
|
|
13
13
|
|
|
@@ -17,16 +17,16 @@ Include `_output/{method}/` in template `.gitignore`.
|
|
|
17
17
|
|
|
18
18
|
## Directory Structure
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
Template source lives under `src/templates/`. At install time, `core/` is copied into `.aiwcli/_core/` and used as the runtime base. Method templates add method-owned files (for example `.aiwcli/_cc-native/*`) and IDE-specific stubs.
|
|
21
21
|
|
|
22
22
|
```
|
|
23
23
|
packages/cli/src/templates/
|
|
24
|
-
├──
|
|
24
|
+
├── core/ # Core runtime source (installed as .aiwcli/_core)
|
|
25
25
|
│ ├── hooks-ts/ # Shared TypeScript hook scripts (context, tasks, sessions)
|
|
26
26
|
│ └── lib-ts/ # Shared TypeScript libraries
|
|
27
|
-
│ ├──
|
|
27
|
+
│ ├── runtime/ # Core runtime helpers
|
|
28
28
|
│ ├── context/ # Context CRUD, selection, formatting, plans, tasks
|
|
29
|
-
│ ├──
|
|
29
|
+
│ ├── hooks/ # Hook utility APIs
|
|
30
30
|
│ └── templates/ # Output formatters, plan context templates
|
|
31
31
|
│
|
|
32
32
|
├── cc-native/ # CC-Native method template
|
|
@@ -35,19 +35,6 @@ packages/cli/src/templates/
|
|
|
35
35
|
│ ├── .windsurf/ # Windsurf: workflows/
|
|
36
36
|
│ └── .gitignore
|
|
37
37
|
│
|
|
38
|
-
├── gsd/ # GSD method template
|
|
39
|
-
│ ├── .aiwcli/_gsd/ # Templates, workflows, hooks, config, docs
|
|
40
|
-
│ ├── .claude/ # Claude Code: settings.json, commands/, agents/
|
|
41
|
-
│ ├── .windsurf/ # Windsurf: workflows/
|
|
42
|
-
│ ├── GSD-README.md
|
|
43
|
-
│ ├── TEMPLATE-SCHEMA.md
|
|
44
|
-
│ └── MIGRATION.md
|
|
45
|
-
│
|
|
46
|
-
├── bmad/ # BMAD method template
|
|
47
|
-
│ ├── .aiwcli/_bmad/ # Agents, workflows, teams, testarch, config
|
|
48
|
-
│ ├── .claude/ # Claude Code: settings.json, commands/
|
|
49
|
-
│ └── ...
|
|
50
|
-
│
|
|
51
38
|
├── planning-with-files/ # Planning-with-Files method template
|
|
52
39
|
│ ├── .claude/ # Claude Code: settings.json, skills/
|
|
53
40
|
│ ├── .windsurf/ # Windsurf: workflows/, scripts/
|
|
@@ -60,7 +47,7 @@ packages/cli/src/templates/
|
|
|
60
47
|
|
|
61
48
|
| Tier | Location | Purpose |
|
|
62
49
|
|------|----------|---------|
|
|
63
|
-
|
|
|
50
|
+
| Core Source | `core/` | Source for runtime payload copied into `.aiwcli/_core/` |
|
|
64
51
|
| Method | `_{method}/` or `.aiwcli/_{method}/` | Method-specific templates, workflows, hooks, config |
|
|
65
52
|
| IDE | `.{ide}/` | IDE-specific command stubs, settings, workflow definitions |
|
|
66
53
|
| Config | `.{ide}/settings.json` | Hooks, model prefs, method settings (merged on install) |
|
|
@@ -72,12 +59,12 @@ packages/cli/src/templates/
|
|
|
72
59
|
When multiple templates install, settings.json files merge:
|
|
73
60
|
|
|
74
61
|
**Hook merging** - Hooks combine by lifecycle event
|
|
75
|
-
**Method namespacing** - Use method name as top-level key: `"
|
|
62
|
+
**Method namespacing** - Use method name as top-level key: `"cc-native": { ... }`
|
|
76
63
|
|
|
77
64
|
```json
|
|
78
65
|
{
|
|
79
|
-
"
|
|
80
|
-
"
|
|
66
|
+
"cc-native": { "planReview": { "enabled": true } },
|
|
67
|
+
"planning-with-files": { "planning": { "enabled": true } }
|
|
81
68
|
}
|
|
82
69
|
```
|
|
83
70
|
|
|
@@ -85,7 +72,7 @@ When multiple templates install, settings.json files merge:
|
|
|
85
72
|
|
|
86
73
|
## Hooks
|
|
87
74
|
|
|
88
|
-
**Location:**
|
|
75
|
+
**Location:** Runtime hooks live in `.aiwcli/_core/hooks-ts/` (cross-method, TypeScript) and optional method hooks in `.aiwcli/_{method}/hooks/`. Template source paths remain under `core/` and `_{method}/` and are wired via reconstructed `.{ide}/settings.json`.
|
|
89
76
|
|
|
90
77
|
**Configuration:**
|
|
91
78
|
```json
|
|
@@ -93,7 +80,7 @@ When multiple templates install, settings.json files merge:
|
|
|
93
80
|
"hooks": {
|
|
94
81
|
"PostToolUse": [{
|
|
95
82
|
"matcher": "Write",
|
|
96
|
-
"hooks": [{ "type": "command", "command": "bun run .aiwcli/
|
|
83
|
+
"hooks": [{ "type": "command", "command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/lint_after_edit.ts", "timeout": 10000 }]
|
|
97
84
|
}]
|
|
98
85
|
}
|
|
99
86
|
}
|
|
@@ -147,7 +134,7 @@ Load and execute `_{method}/workflows/{name}.md`.
|
|
|
147
134
|
| Reference Type | Pattern |
|
|
148
135
|
|----------------|---------|
|
|
149
136
|
| Templates | `_{method}/templates/FILE.md.template` |
|
|
150
|
-
| Workflows (Claude) | `/
|
|
137
|
+
| Workflows (Claude) | `/{method}:workflow-name` (maps to `.claude/commands/{method}/workflow-name.md`) |
|
|
151
138
|
| Workflows (Windsurf) | `workflow-name` from method workflows |
|
|
152
139
|
| Outputs | `_output/{method}/{subdir}/FILE.md` |
|
|
153
140
|
|
|
@@ -157,13 +144,13 @@ Load and execute `_{method}/workflows/{name}.md`.
|
|
|
157
144
|
|
|
158
145
|
| Element | Convention | Example |
|
|
159
146
|
|---------|------------|---------|
|
|
160
|
-
| Method folder | `_{lowercase}` | `
|
|
147
|
+
| Method folder | `_{lowercase}` | `_cc-native` |
|
|
161
148
|
| Template file | `UPPERCASE.md.template` | `PROJECT.md.template` |
|
|
162
149
|
| Workflow file | `kebab-case.md` | `new-project.md` |
|
|
163
150
|
| Output file | `UPPERCASE.md` | `PROJECT.md` |
|
|
164
|
-
| Hook file | `{method}-{name}.{ext}` | `
|
|
165
|
-
| Settings key | `{method}` | `"
|
|
166
|
-
| Readme | `{METHOD}-README.md` | `
|
|
151
|
+
| Hook file | `{method}-{name}.{ext}` | `cc-native-plan-review.ts` |
|
|
152
|
+
| Settings key | `{method}` | `"cc-native": {}` |
|
|
153
|
+
| Readme | `{METHOD}-README.md` | `CC-NATIVE-README.md` |
|
|
167
154
|
|
|
168
155
|
---
|
|
169
156
|
|
|
@@ -202,31 +189,34 @@ Load and execute `_{method}/workflows/{name}.md`.
|
|
|
202
189
|
- Full workflows in IDE command files
|
|
203
190
|
- Hardcoded paths without method namespace
|
|
204
191
|
- Putting hook scripts directly in IDE directories (`.claude/hooks/`)
|
|
205
|
-
- Creating `
|
|
192
|
+
- Creating `core/` directories inside method templates (e.g., `cc-native/core/`). All shared code lives in `packages/cli/src/templates/core/`. Method templates reference shared code via imports at runtime, not by copying.
|
|
206
193
|
|
|
207
194
|
---
|
|
208
195
|
|
|
209
196
|
## System Co-location Pattern
|
|
210
197
|
|
|
211
|
-
Cohesive subsystems are organized as self-contained folders
|
|
198
|
+
Cohesive subsystems are organized as self-contained folders. In source they live under `core/` or method folders; at runtime, `core` subsystems execute from `.aiwcli/_core/*`.
|
|
212
199
|
|
|
213
200
|
```
|
|
214
201
|
{system-name}/
|
|
215
202
|
├── CLAUDE.md ← Spec: lifecycle, API reference, design decisions, gotchas
|
|
216
203
|
├── lib/ ← TypeScript implementation (imported by hooks and other systems)
|
|
217
|
-
├── agents/ ← Agent spec .md files used by this system (if
|
|
218
|
-
├── scripts/ ← Standalone entry points invoked independently (if
|
|
219
|
-
└── workflows/ ← User-facing procedural workflow docs (if
|
|
204
|
+
├── agents/ ← Agent spec .md files used by this system (if present)
|
|
205
|
+
├── scripts/ ← Standalone entry points invoked independently (if present)
|
|
206
|
+
└── workflows/ ← User-facing procedural workflow docs (if present)
|
|
220
207
|
```
|
|
221
208
|
|
|
222
209
|
**Existing systems following this pattern:**
|
|
223
|
-
- `
|
|
224
|
-
- `
|
|
225
|
-
- `
|
|
226
|
-
- `_cc-native/
|
|
210
|
+
- `core/skills/handoff-system/` — handoff creation and restoration
|
|
211
|
+
- `core/skills/codex/` — Codex launch + watch integration
|
|
212
|
+
- `core/skills/meta-plan/` — prompt amplification workflow
|
|
213
|
+
- `cc-native/_cc-native/plan-review/` — method-specific plan review pipeline
|
|
214
|
+
- `cc-native/_cc-native/artifacts/` — method-specific review artifacts
|
|
215
|
+
- `cc-native/_cc-native/lib-ts/rlm/` — method-specific retrieval memory
|
|
227
216
|
|
|
228
217
|
**Hooks are NOT co-located with their owning system.**
|
|
229
218
|
Claude Code hooks are path-referenced in `.claude/settings.json` at install time.
|
|
230
219
|
Moving a hook file requires settings.json updates — high blast-radius, fragile.
|
|
231
|
-
|
|
220
|
+
Core hooks live in `core/hooks-ts/` source (installed to `.aiwcli/_core/hooks-ts/`), and method hooks live in method folders (for example `cc-native/_cc-native/hooks/`). Each system's CLAUDE.md
|
|
232
221
|
lists the hooks that invoke it under a "Hooks" section.
|
|
222
|
+
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"statusLine": {
|
|
3
3
|
"type": "command",
|
|
4
|
-
"command": "
|
|
4
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/scripts/status_line.ts"
|
|
5
5
|
},
|
|
6
6
|
"fileSuggestion": {
|
|
7
7
|
"type": "command",
|
|
8
|
-
"command": "bun
|
|
8
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/file-suggestion.ts"
|
|
9
9
|
},
|
|
10
10
|
"hooks": {
|
|
11
11
|
"UserPromptSubmit": [
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"hooks": [
|
|
14
14
|
{
|
|
15
15
|
"type": "command",
|
|
16
|
-
"command": "bun
|
|
16
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/user_prompt_submit.ts",
|
|
17
17
|
"timeout": 10000
|
|
18
18
|
}
|
|
19
19
|
]
|
|
@@ -22,10 +22,19 @@
|
|
|
22
22
|
"hooks": [
|
|
23
23
|
{
|
|
24
24
|
"type": "command",
|
|
25
|
-
"command": "bun
|
|
25
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_cc-native/hooks/plan_questions_early.ts",
|
|
26
26
|
"timeout": 3000
|
|
27
27
|
}
|
|
28
28
|
]
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"hooks": [
|
|
32
|
+
{
|
|
33
|
+
"type": "command",
|
|
34
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/codex_explorer.ts",
|
|
35
|
+
"timeout": 55000
|
|
36
|
+
}
|
|
37
|
+
]
|
|
29
38
|
}
|
|
30
39
|
],
|
|
31
40
|
"PostToolUse": [
|
|
@@ -34,7 +43,7 @@
|
|
|
34
43
|
"hooks": [
|
|
35
44
|
{
|
|
36
45
|
"type": "command",
|
|
37
|
-
"command": "bun
|
|
46
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/context_monitor.ts",
|
|
38
47
|
"timeout": 5000
|
|
39
48
|
}
|
|
40
49
|
]
|
|
@@ -44,7 +53,7 @@
|
|
|
44
53
|
"hooks": [
|
|
45
54
|
{
|
|
46
55
|
"type": "command",
|
|
47
|
-
"command": "bun
|
|
56
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/task_create_capture.ts",
|
|
48
57
|
"timeout": 3000
|
|
49
58
|
}
|
|
50
59
|
]
|
|
@@ -54,7 +63,7 @@
|
|
|
54
63
|
"hooks": [
|
|
55
64
|
{
|
|
56
65
|
"type": "command",
|
|
57
|
-
"command": "bun
|
|
66
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/task_update_capture.ts",
|
|
58
67
|
"timeout": 3000
|
|
59
68
|
}
|
|
60
69
|
]
|
|
@@ -64,27 +73,17 @@
|
|
|
64
73
|
"hooks": [
|
|
65
74
|
{
|
|
66
75
|
"type": "command",
|
|
67
|
-
"command": "bun
|
|
76
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/archive_plan.ts",
|
|
68
77
|
"timeout": 5000
|
|
69
78
|
}
|
|
70
79
|
]
|
|
71
80
|
},
|
|
72
|
-
{
|
|
73
|
-
"matcher": "Write|Edit",
|
|
74
|
-
"hooks": [
|
|
75
|
-
{
|
|
76
|
-
"type": "command",
|
|
77
|
-
"command": "bun ~/.aiwcli/bin/resolve-run.ts .aiwcli/_shared/hooks-ts/lint_after_edit.ts",
|
|
78
|
-
"timeout": 10000
|
|
79
|
-
}
|
|
80
|
-
]
|
|
81
|
-
},
|
|
82
81
|
{
|
|
83
82
|
"matcher": "AskUserQuestion",
|
|
84
83
|
"hooks": [
|
|
85
84
|
{
|
|
86
85
|
"type": "command",
|
|
87
|
-
"command": "bun
|
|
86
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_cc-native/hooks/mark_questions_asked.ts",
|
|
88
87
|
"timeout": 3000
|
|
89
88
|
}
|
|
90
89
|
]
|
|
@@ -94,7 +93,7 @@
|
|
|
94
93
|
"hooks": [
|
|
95
94
|
{
|
|
96
95
|
"type": "command",
|
|
97
|
-
"command": "bun
|
|
96
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_cc-native/hooks/enhance_plan_post_write.ts",
|
|
98
97
|
"timeout": 5000
|
|
99
98
|
}
|
|
100
99
|
]
|
|
@@ -104,7 +103,7 @@
|
|
|
104
103
|
"hooks": [
|
|
105
104
|
{
|
|
106
105
|
"type": "command",
|
|
107
|
-
"command": "bun
|
|
106
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_cc-native/hooks/enhance_plan_post_subagent.ts",
|
|
108
107
|
"timeout": 10000,
|
|
109
108
|
"blockOnFail": false
|
|
110
109
|
}
|
|
@@ -116,7 +115,7 @@
|
|
|
116
115
|
"hooks": [
|
|
117
116
|
{
|
|
118
117
|
"type": "command",
|
|
119
|
-
"command": "bun
|
|
118
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/session_start.ts",
|
|
120
119
|
"timeout": 5000
|
|
121
120
|
}
|
|
122
121
|
]
|
|
@@ -127,7 +126,7 @@
|
|
|
127
126
|
"hooks": [
|
|
128
127
|
{
|
|
129
128
|
"type": "command",
|
|
130
|
-
"command": "bun
|
|
129
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/session_end.ts",
|
|
131
130
|
"timeout": 5000
|
|
132
131
|
}
|
|
133
132
|
]
|
|
@@ -138,7 +137,7 @@
|
|
|
138
137
|
"hooks": [
|
|
139
138
|
{
|
|
140
139
|
"type": "command",
|
|
141
|
-
"command": "bun
|
|
140
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/pre_compact.ts",
|
|
142
141
|
"timeout": 5000
|
|
143
142
|
}
|
|
144
143
|
]
|
|
@@ -150,7 +149,7 @@
|
|
|
150
149
|
"hooks": [
|
|
151
150
|
{
|
|
152
151
|
"type": "command",
|
|
153
|
-
"command": "bun
|
|
152
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_core/hooks-ts/archive_plan.ts",
|
|
154
153
|
"timeout": 5000
|
|
155
154
|
}
|
|
156
155
|
]
|
|
@@ -171,7 +170,7 @@
|
|
|
171
170
|
"hooks": [
|
|
172
171
|
{
|
|
173
172
|
"type": "command",
|
|
174
|
-
"command": "bun
|
|
173
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_cc-native/hooks/validate_task_prompt.ts",
|
|
175
174
|
"timeout": 20000
|
|
176
175
|
}
|
|
177
176
|
]
|
|
@@ -181,7 +180,7 @@
|
|
|
181
180
|
"hooks": [
|
|
182
181
|
{
|
|
183
182
|
"type": "command",
|
|
184
|
-
"command": "bun
|
|
183
|
+
"command": "bun .aiwcli/_core/scripts/resolve-run.ts .aiwcli/_cc-native/hooks/cc-native-plan-review.ts",
|
|
185
184
|
"timeout": 5000
|
|
186
185
|
}
|
|
187
186
|
]
|
|
@@ -194,14 +193,5 @@
|
|
|
194
193
|
},
|
|
195
194
|
"env": {
|
|
196
195
|
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
|
|
197
|
-
},
|
|
198
|
-
"enabledPlugins": {},
|
|
199
|
-
"methods": {
|
|
200
|
-
"cc-native": {
|
|
201
|
-
"ides": [
|
|
202
|
-
"claude"
|
|
203
|
-
],
|
|
204
|
-
"installedAt": "2026-02-21T16:59:33.520Z"
|
|
205
|
-
}
|
|
206
196
|
}
|
|
207
197
|
}
|
|
@@ -94,7 +94,7 @@ The brackets indicate optional steps. Research only needs Clarify → Explore
|
|
|
94
94
|
|
|
95
95
|
## Context Management (Phase 2 - Shared Infrastructure)
|
|
96
96
|
|
|
97
|
-
CC-Native uses **direct-state context management** via shared infrastructure in `
|
|
97
|
+
CC-Native uses **direct-state context management** via shared infrastructure in `core/`:
|
|
98
98
|
|
|
99
99
|
```
|
|
100
100
|
_output/contexts/
|