@opengsd/gsd-core 1.16.0 → 1.18.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -2
- package/.opencode/plugins/gsd-core.js +251 -1
- package/.opencode/plugins/gsd-statusline/tui.tsx +55 -0
- package/GEMINI.md +1 -1
- package/agents/gsd-advisor-researcher.compact.md +1 -1
- package/agents/gsd-advisor-researcher.md +1 -1
- package/agents/gsd-assumptions-analyzer.compact.md +1 -1
- package/agents/gsd-assumptions-analyzer.md +1 -1
- package/agents/gsd-code-fixer.compact.md +1 -1
- package/agents/gsd-code-fixer.md +1 -1
- package/agents/gsd-code-reviewer.compact.md +1 -1
- package/agents/gsd-code-reviewer.md +1 -1
- package/agents/gsd-codebase-mapper.compact.md +1 -1
- package/agents/gsd-codebase-mapper.md +1 -1
- package/agents/gsd-debug-session-manager.compact.md +6 -0
- package/agents/gsd-debug-session-manager.md +6 -0
- package/agents/gsd-debugger.md +1 -1
- package/agents/gsd-doc-verifier.compact.md +4 -4
- package/agents/gsd-doc-verifier.md +4 -3
- package/agents/gsd-doc-writer.compact.md +23 -5
- package/agents/gsd-doc-writer.md +19 -6
- package/agents/gsd-eval-auditor.compact.md +1 -1
- package/agents/gsd-eval-auditor.md +1 -1
- package/agents/gsd-executor.md +7 -3
- package/agents/gsd-integration-checker.compact.md +1 -1
- package/agents/gsd-integration-checker.md +1 -1
- package/agents/gsd-nyquist-auditor.compact.md +1 -1
- package/agents/gsd-nyquist-auditor.md +1 -1
- package/agents/gsd-phase-researcher.md +1 -1
- package/agents/gsd-plan-checker.md +2 -1
- package/agents/gsd-planner.md +5 -4
- package/agents/gsd-project-researcher.compact.md +1 -1
- package/agents/gsd-project-researcher.md +1 -1
- package/agents/gsd-research-synthesizer.compact.md +5 -5
- package/agents/gsd-research-synthesizer.md +5 -5
- package/agents/gsd-roadmapper.compact.md +1 -1
- package/agents/gsd-roadmapper.md +1 -1
- package/agents/gsd-security-auditor.compact.md +1 -1
- package/agents/gsd-security-auditor.md +1 -1
- package/agents/gsd-ui-auditor.compact.md +1 -1
- package/agents/gsd-ui-auditor.md +1 -1
- package/agents/gsd-ui-checker.compact.md +1 -1
- package/agents/gsd-ui-checker.md +1 -1
- package/agents/gsd-ui-researcher.compact.md +13 -1
- package/agents/gsd-ui-researcher.md +28 -1
- package/agents/gsd-verifier.md +1 -1
- package/bin/gsd-mcp-server.js +3 -1
- package/bin/install.js +398 -95
- package/commands/gsd/code-review.md +8 -0
- package/commands/gsd/pause-work.md +1 -1
- package/gsd-core/bin/gsd-tools.cjs +34 -12
- package/gsd-core/bin/lib/adr-parser.cjs +37 -5
- package/gsd-core/bin/lib/capability-ledger.cjs +25 -0
- package/gsd-core/bin/lib/capability-lock.cjs +29 -7
- package/gsd-core/bin/lib/capability-registry.cjs +138 -80
- package/gsd-core/bin/lib/capability-source.cjs +3 -1
- package/gsd-core/bin/lib/capability-state.cjs +6 -3
- package/gsd-core/bin/lib/capability-validator.cjs +8 -5
- package/gsd-core/bin/lib/capability-writer.cjs +2 -1
- package/gsd-core/bin/lib/commands.cjs +33 -9
- package/gsd-core/bin/lib/config-loader.cjs +3 -3
- package/gsd-core/bin/lib/decision-coverage-support.cjs +19 -0
- package/gsd-core/bin/lib/gate-context-drift.cjs +5 -4
- package/gsd-core/bin/lib/gate-decision-coverage-plan.cjs +15 -0
- package/gsd-core/bin/lib/gate-decision-coverage-verify.cjs +13 -0
- package/gsd-core/bin/lib/gate-predicate-evaluator.cjs +23 -3
- package/gsd-core/bin/lib/gate-predicate.cjs +8 -12
- package/gsd-core/bin/lib/gate-tdd-review-checkpoint.cjs +60 -5
- package/gsd-core/bin/lib/gate-ui-safety.cjs +2 -1
- package/gsd-core/bin/lib/graphify.cjs +3 -2
- package/gsd-core/bin/lib/init.cjs +43 -16
- package/gsd-core/bin/lib/install-effort-resolver.cjs +2 -2
- package/gsd-core/bin/lib/install-engine.cjs +11 -0
- package/gsd-core/bin/lib/install-model-override-resolver.cjs +4 -3
- package/gsd-core/bin/lib/install-profiles.cjs +5 -3
- package/gsd-core/bin/lib/install-shadow-report.cjs +12 -0
- package/gsd-core/bin/lib/installer-migrations/011-opencode-mcp-no-prompts.cjs +99 -0
- package/gsd-core/bin/lib/installer-migrations.cjs +54 -1
- package/gsd-core/bin/lib/jsonc-edit.cjs +418 -0
- package/gsd-core/bin/lib/loop-host-contract.cjs +2 -1
- package/gsd-core/bin/lib/mcp-server.cjs +5 -1
- package/gsd-core/bin/lib/opencode-mcp-entry.cjs +39 -0
- package/gsd-core/bin/lib/opencode-version.cjs +486 -0
- package/gsd-core/bin/lib/phase.cjs +141 -11
- package/gsd-core/bin/lib/quick-batch-dispatch.cjs +2 -1
- package/gsd-core/bin/lib/report-parser.cjs +57 -1
- package/gsd-core/bin/lib/review-lane-invocation.cjs +40 -0
- package/gsd-core/bin/lib/review-reviewer-selection.cjs +20 -1
- package/gsd-core/bin/lib/roadmap.cjs +56 -5
- package/gsd-core/bin/lib/runtime-artifact-conversion.cjs +142 -6
- package/gsd-core/bin/lib/runtime-homes.cjs +18 -0
- package/gsd-core/bin/lib/runtime-hooks-surface.cjs +58 -3
- package/gsd-core/bin/lib/runtime-slash.cjs +13 -0
- package/gsd-core/bin/lib/shell-command-projection.cjs +2 -0
- package/gsd-core/bin/lib/smart-entry.cjs +100 -53
- package/gsd-core/bin/lib/state-document.cjs +37 -3
- package/gsd-core/bin/lib/state-transition.cjs +98 -19
- package/gsd-core/bin/lib/state.cjs +544 -126
- package/gsd-core/bin/lib/task-command-router.cjs +2 -3
- package/gsd-core/bin/lib/tdd-red-evidence.cjs +5 -0
- package/gsd-core/bin/lib/tdd-test-files.cjs +42 -0
- package/gsd-core/bin/lib/update-context.cjs +18 -1
- package/gsd-core/bin/lib/verification.cjs +107 -17
- package/gsd-core/bin/lib/verify.cjs +36 -1
- package/gsd-core/references/agent-contracts.md +1 -1
- package/gsd-core/references/agent-skills-bootstrap.md +26 -7
- package/gsd-core/references/git-integration.md +3 -3
- package/gsd-core/references/planner-reversibility.md +18 -4
- package/gsd-core/references/planner-verify-command-grounding.md +18 -0
- package/gsd-core/references/tdd.md +4 -3
- package/gsd-core/references/verifier-phase-gates.md +8 -1
- package/gsd-core/workflows/add-backlog.md +10 -2
- package/gsd-core/workflows/add-phase.md +5 -1
- package/gsd-core/workflows/add-tests.md +5 -1
- package/gsd-core/workflows/add-todo.md +5 -1
- package/gsd-core/workflows/ai-integration-phase.md +5 -1
- package/gsd-core/workflows/audit-milestone.md +21 -9
- package/gsd-core/workflows/autonomous/templates/minimal-context.md +41 -0
- package/gsd-core/workflows/autonomous.md +52 -64
- package/gsd-core/workflows/check-todos.md +5 -1
- package/gsd-core/workflows/code-review-fix.md +5 -1
- package/gsd-core/workflows/code-review.md +21 -2
- package/gsd-core/workflows/complete-milestone/detail/elaboration.md +5 -1
- package/gsd-core/workflows/complete-milestone.md +25 -5
- package/gsd-core/workflows/debug.md +5 -1
- package/gsd-core/workflows/diagnose-issues.md +5 -1
- package/gsd-core/workflows/discuss-phase/modes/chain.md +5 -1
- package/gsd-core/workflows/discuss-phase-assumptions.md +11 -3
- package/gsd-core/workflows/discuss-phase.md +5 -1
- package/gsd-core/workflows/docs-update/detail/elaboration.md +7 -6
- package/gsd-core/workflows/docs-update.md +27 -5
- package/gsd-core/workflows/edit-phase.md +5 -1
- package/gsd-core/workflows/eval-review.md +11 -3
- package/gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md +5 -1
- package/gsd-core/workflows/execute-phase/steps/executor-isolation-dispatch.md +1 -1
- package/gsd-core/workflows/execute-phase/steps/post-merge-gate.md +12 -6
- package/gsd-core/workflows/execute-phase/steps/regression-gate-run.md +19 -2
- package/gsd-core/workflows/execute-phase/steps/regression-gate.md +18 -1
- package/gsd-core/workflows/execute-phase/steps/verify-phase-goal.md +5 -1
- package/gsd-core/workflows/execute-phase.md +40 -7
- package/gsd-core/workflows/execute-plan.md +8 -4
- package/gsd-core/workflows/extract-learnings.md +6 -2
- package/gsd-core/workflows/forensics.md +5 -1
- package/gsd-core/workflows/import.md +5 -1
- package/gsd-core/workflows/insert-phase.md +5 -1
- package/gsd-core/workflows/manager.md +10 -2
- package/gsd-core/workflows/map-codebase.md +5 -1
- package/gsd-core/workflows/milestone-summary.md +10 -2
- package/gsd-core/workflows/new-milestone.md +13 -5
- package/gsd-core/workflows/new-project.md +9 -5
- package/gsd-core/workflows/next.md +8 -4
- package/gsd-core/workflows/pause-work.md +3 -3
- package/gsd-core/workflows/plan-phase/steps/auto-advance-check.md +70 -0
- package/gsd-core/workflows/plan-phase/steps/chunked-planning-mode.md +5 -1
- package/gsd-core/workflows/plan-phase/steps/closed-phase-gate.md +6 -2
- package/gsd-core/workflows/plan-phase.md +41 -73
- package/gsd-core/workflows/plan-review-convergence.md +17 -5
- package/gsd-core/workflows/plant-seed.md +8 -4
- package/gsd-core/workflows/progress.md +6 -2
- package/gsd-core/workflows/quick-batch.md +5 -1
- package/gsd-core/workflows/quick.md +22 -7
- package/gsd-core/workflows/remove-phase.md +5 -1
- package/gsd-core/workflows/resume-project.md +19 -11
- package/gsd-core/workflows/review.md +6 -2
- package/gsd-core/workflows/scan.md +5 -1
- package/gsd-core/workflows/secure-phase.md +6 -2
- package/gsd-core/workflows/settings.md +3 -3
- package/gsd-core/workflows/ship.md +13 -10
- package/gsd-core/workflows/thread.md +10 -2
- package/gsd-core/workflows/transition.md +5 -1
- package/gsd-core/workflows/ui-phase.md +5 -1
- package/gsd-core/workflows/ui-review.md +6 -2
- package/gsd-core/workflows/ultraplan-phase.md +5 -1
- package/gsd-core/workflows/update.md +5 -1
- package/gsd-core/workflows/validate-phase.md +6 -2
- package/gsd-core/workflows/verify-work/detail/elaboration.md +1 -1
- package/gsd-core/workflows/verify-work/steps/mvp-uat-framing.md +5 -1
- package/gsd-core/workflows/verify-work.md +11 -3
- package/hooks/dist/gsd-agent-isolation-guard.js +3 -1
- package/hooks/dist/gsd-check-update.js +26 -20
- package/hooks/dist/gsd-context-monitor.js +14 -5
- package/hooks/dist/gsd-cursor-subagent-start.js +2 -1
- package/hooks/dist/gsd-secret-read-guard.js +189 -15
- package/hooks/dist/gsd-statusline.js +321 -22
- package/hooks/dist/gsd-validate-commit.sh +27 -5
- package/hooks/gsd-agent-isolation-guard.js +3 -1
- package/hooks/gsd-check-update.js +26 -20
- package/hooks/gsd-context-monitor.js +14 -5
- package/hooks/gsd-cursor-subagent-start.js +2 -1
- package/hooks/gsd-secret-read-guard.js +189 -15
- package/hooks/gsd-statusline.js +321 -22
- package/hooks/gsd-validate-commit.sh +27 -5
- package/package.json +1 -1
- package/scripts/audit-workflow-script-paths.cjs +1 -1
- package/scripts/diagnose-validate-commit-in-tier.cjs +270 -0
- package/scripts/diagnose-validate-commit-phases.cjs +348 -0
- package/scripts/diagnose-windows-spawn-watcher.cjs +317 -0
- package/scripts/docs-guard-registry.cjs +2 -0
- package/scripts/gen-capability-registry.cjs +7 -1
- package/scripts/gen-loop-host-contract.cjs +4 -1
- package/scripts/lib/macos-conformance-tier.generated.cjs +13 -0
- package/scripts/lib/platform-conformance-tier.generated.cjs +26 -0
- package/scripts/lint-phase-arg-assignment.cjs +2 -2
- package/scripts/lint-workflow-shellcheck-baseline.json +16 -16
- package/scripts/mutation-matrix.cjs +3 -1
- package/scripts/release-tarball-smoke.cjs +15 -7
- package/scripts/xtrace-phase-timing.cjs +205 -0
- package/skills/gsd-code-review/SKILL.md +8 -0
- package/skills/gsd-pause-work/SKILL.md +1 -1
- package/vscode/package.json +1 -1
|
@@ -10,7 +10,7 @@ const capabilities = {
|
|
|
10
10
|
"ai-integration": {
|
|
11
11
|
"id": "ai-integration",
|
|
12
12
|
"role": "feature",
|
|
13
|
-
"version": "1.
|
|
13
|
+
"version": "1.18.0",
|
|
14
14
|
"title": "AI design contract",
|
|
15
15
|
"description": "AI-SPEC design contract workflow for phases that build AI systems; owns the AI integration command, agents, and workflow.ai_integration_phase activation key.",
|
|
16
16
|
"tier": "full",
|
|
@@ -95,7 +95,7 @@ const capabilities = {
|
|
|
95
95
|
"antigravity": {
|
|
96
96
|
"id": "antigravity",
|
|
97
97
|
"role": "runtime",
|
|
98
|
-
"version": "1.
|
|
98
|
+
"version": "1.18.0",
|
|
99
99
|
"title": "Antigravity",
|
|
100
100
|
"description": "Google Antigravity IDE — config/settings home nested under ~/.gemini/antigravity (probed across 1.x and 2.x layouts); global skills/agents install under ~/.gemini/config, the dir AGY scans for global discovery (#3738); Gemini hook event dialect; flat skill layout; tier-1 support.",
|
|
101
101
|
"tier": "core",
|
|
@@ -194,6 +194,10 @@ const capabilities = {
|
|
|
194
194
|
"effortSurface": "undocumented"
|
|
195
195
|
},
|
|
196
196
|
"hostBehaviors": {
|
|
197
|
+
"defaultHomeIncludeRoot": ".gemini/antigravity",
|
|
198
|
+
"unsupportedFeatures": [
|
|
199
|
+
"context-warnings"
|
|
200
|
+
],
|
|
197
201
|
"projectInstructionFile": "GEMINI.md",
|
|
198
202
|
"noPathRewrite": true,
|
|
199
203
|
"hookPathStyle": "raw",
|
|
@@ -259,7 +263,7 @@ const capabilities = {
|
|
|
259
263
|
"assumption-delta": {
|
|
260
264
|
"id": "assumption-delta",
|
|
261
265
|
"role": "feature",
|
|
262
|
-
"version": "1.
|
|
266
|
+
"version": "1.18.0",
|
|
263
267
|
"title": "Assumption-delta architecture checkpoint",
|
|
264
268
|
"description": "Rarely-firing advisory checkpoint that triggers when a phase makes something plural, optional, or chosen that used to be singular, required, or derived. Surfaces one identity-model question (promote the new general representation to primary, or add it alongside?) so a silent primary-key drift does not accumulate into a later user-facing bug. Non-blocking; fires only on a detected signal.",
|
|
265
269
|
"tier": "full",
|
|
@@ -305,7 +309,7 @@ const capabilities = {
|
|
|
305
309
|
"audit": {
|
|
306
310
|
"id": "audit",
|
|
307
311
|
"role": "feature",
|
|
308
|
-
"version": "1.
|
|
312
|
+
"version": "1.18.0",
|
|
309
313
|
"title": "Audit",
|
|
310
314
|
"description": "Open-artifact audit and UAT-gap audit for milestone close gates; exposes `gsd-tools audit-uat` (cross-phase UAT outstanding items) and `gsd-tools audit-open` (structured open-artifact scan across debug, tasks, threads, todos, seeds, UAT, verification, context-questions).",
|
|
311
315
|
"tier": "full",
|
|
@@ -342,7 +346,7 @@ const capabilities = {
|
|
|
342
346
|
"augment": {
|
|
343
347
|
"id": "augment",
|
|
344
348
|
"role": "runtime",
|
|
345
|
-
"version": "1.
|
|
349
|
+
"version": "1.18.0",
|
|
346
350
|
"title": "Augment Code",
|
|
347
351
|
"description": "Augment Code CLI — commands + nested-skill artifact layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
348
352
|
"tier": "core",
|
|
@@ -428,6 +432,9 @@ const capabilities = {
|
|
|
428
432
|
"permissionWriter": null,
|
|
429
433
|
"extendedHookEvents": [],
|
|
430
434
|
"hostBehaviors": {
|
|
435
|
+
"unsupportedFeatures": [
|
|
436
|
+
"context-warnings"
|
|
437
|
+
],
|
|
431
438
|
"commandBodyConverter": "convertClaudeToAugmentMarkdown",
|
|
432
439
|
"mcpCompanion": "settings-json",
|
|
433
440
|
"contentRewriteProfile": "slash-lookahead-own-derived"
|
|
@@ -457,7 +464,7 @@ const capabilities = {
|
|
|
457
464
|
"broken-windows": {
|
|
458
465
|
"id": "broken-windows",
|
|
459
466
|
"role": "feature",
|
|
460
|
-
"version": "1.
|
|
467
|
+
"version": "1.18.0",
|
|
461
468
|
"title": "Broken-windows ledger",
|
|
462
469
|
"description": "Cross-phase defect register accumulating stubs, TODOs, skipped tests, unrun verifies, and unmet truths into .planning/WINDOWS.md. When enforcement is enabled, it blocks /gsd-ship while any window is open unless explicitly waived with a recorded reason. Operationalizes GSD's no-defer discipline as a tracked artifact (issue #1950).",
|
|
463
470
|
"tier": "full",
|
|
@@ -503,7 +510,7 @@ const capabilities = {
|
|
|
503
510
|
"claude": {
|
|
504
511
|
"id": "claude",
|
|
505
512
|
"role": "runtime",
|
|
506
|
-
"version": "1.
|
|
513
|
+
"version": "1.18.0",
|
|
507
514
|
"title": "Claude Code",
|
|
508
515
|
"description": "Anthropic Claude Code — primary development runtime; tier-1 support with full hook surface and skills-based global install.",
|
|
509
516
|
"tier": "core",
|
|
@@ -691,7 +698,7 @@ const capabilities = {
|
|
|
691
698
|
"claude-orchestration": {
|
|
692
699
|
"id": "claude-orchestration",
|
|
693
700
|
"role": "feature",
|
|
694
|
-
"version": "1.
|
|
701
|
+
"version": "1.18.0",
|
|
695
702
|
"title": "Claude orchestration (Workflow backend)",
|
|
696
703
|
"description": "Default-off, BETA, claude-only capability that adopts Claude Code's Workflow tool (the engine behind /effort ultracode) as an optional parallel-execution backend for the GSD loop. When the runtime exposes the Workflow tool and claude_orchestration.execution_backend resolves to 'workflow', execute-phase emits a generated Workflow script (waves -> parallel() barriers, plans -> agent({ agentType: 'gsd-executor', isolation: 'worktree' }), files_modified overlap -> separate sequential stages, resumeFromRunId wired to the phase run id, shared token budget) that composes the SAME gsd-executor agent and worktree isolation the inline path uses, restoring the wave parallelism the #853 backgrounded-agent nesting limitation forces inline on Claude Code. (The plan-checker and verifier remain inline until separately wired — this capability delivers the parallel-execution backend, not those gates.) Also folds the ultraplan plan-offload under one runtime gate (plan:* surface). On any runtime lacking the Workflow tool, or when the capability is disabled, behaviour is byte-identical to today (inline/manual dispatch). Detection + emission live in gsd-core/bin/lib/claude-orchestration.cjs (pure, fail-closed). Mirrors the existing gsd-ultraplan-phase BETA-isolation posture.",
|
|
697
704
|
"tier": "full",
|
|
@@ -765,7 +772,7 @@ const capabilities = {
|
|
|
765
772
|
"cline": {
|
|
766
773
|
"id": "cline",
|
|
767
774
|
"role": "runtime",
|
|
768
|
-
"version": "1.
|
|
775
|
+
"version": "1.18.0",
|
|
769
776
|
"title": "Cline",
|
|
770
777
|
"description": "Cline (VS Code extension) — global-only nested-skill layout; cline-rules hook surface (.clinerules); no hook events emitted; tier-2 support.",
|
|
771
778
|
"tier": "core",
|
|
@@ -859,7 +866,7 @@ const capabilities = {
|
|
|
859
866
|
"code-review": {
|
|
860
867
|
"id": "code-review",
|
|
861
868
|
"role": "feature",
|
|
862
|
-
"version": "1.
|
|
869
|
+
"version": "1.18.0",
|
|
863
870
|
"title": "Code review",
|
|
864
871
|
"description": "Source-file code review and review-fix workflow support for completed execution work.",
|
|
865
872
|
"tier": "full",
|
|
@@ -945,7 +952,7 @@ const capabilities = {
|
|
|
945
952
|
"codebuddy": {
|
|
946
953
|
"id": "codebuddy",
|
|
947
954
|
"role": "runtime",
|
|
948
|
-
"version": "1.
|
|
955
|
+
"version": "1.18.0",
|
|
949
956
|
"title": "CodeBuddy",
|
|
950
957
|
"description": "CodeBuddy (Tencent) — converted commands + skills artifact layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
951
958
|
"tier": "core",
|
|
@@ -1056,6 +1063,9 @@ const capabilities = {
|
|
|
1056
1063
|
"effortSurface": "undocumented"
|
|
1057
1064
|
},
|
|
1058
1065
|
"hostBehaviors": {
|
|
1066
|
+
"unsupportedFeatures": [
|
|
1067
|
+
"context-warnings"
|
|
1068
|
+
],
|
|
1059
1069
|
"reportCommandsDir": true,
|
|
1060
1070
|
"contentRewriteProfile": "slash-bare-own-tilde-bare"
|
|
1061
1071
|
}
|
|
@@ -1064,9 +1074,9 @@ const capabilities = {
|
|
|
1064
1074
|
"coderabbit": {
|
|
1065
1075
|
"id": "coderabbit",
|
|
1066
1076
|
"role": "reviewer",
|
|
1067
|
-
"version": "1.
|
|
1077
|
+
"version": "1.18.0",
|
|
1068
1078
|
"title": "CodeRabbit",
|
|
1069
|
-
"description": "CodeRabbit CLI — cross-AI /gsd
|
|
1079
|
+
"description": "CodeRabbit CLI — cross-AI /gsd-review reviewer lane only; not a GSD install target (no runtime body, no artifacts). Reviews the working-tree diff (`coderabbit review --prompt-only`), not the source tree, and accepts neither a prompt nor a model flag; findings are down-weighted in consensus (evidenceClass: diff-only).",
|
|
1070
1080
|
"tier": "full",
|
|
1071
1081
|
"requires": [],
|
|
1072
1082
|
"engines": {
|
|
@@ -1116,7 +1126,7 @@ const capabilities = {
|
|
|
1116
1126
|
"codex": {
|
|
1117
1127
|
"id": "codex",
|
|
1118
1128
|
"role": "runtime",
|
|
1119
|
-
"version": "1.
|
|
1129
|
+
"version": "1.18.0",
|
|
1120
1130
|
"title": "OpenAI Codex CLI",
|
|
1121
1131
|
"description": "OpenAI Codex CLI — shell-var command style; per-agent sandbox tiers; config.toml + hooks.json hook surface; tier-1 support.",
|
|
1122
1132
|
"tier": "core",
|
|
@@ -1303,7 +1313,7 @@ const capabilities = {
|
|
|
1303
1313
|
"copilot": {
|
|
1304
1314
|
"id": "copilot",
|
|
1305
1315
|
"role": "runtime",
|
|
1306
|
-
"version": "1.
|
|
1316
|
+
"version": "1.18.0",
|
|
1307
1317
|
"title": "GitHub Copilot",
|
|
1308
1318
|
"description": "GitHub Copilot (VS Code) — markdown config format; copilot-inline hook surface; no hook events emitted; flat skill nesting (unconfirmed recursive loader); tier-2 support.",
|
|
1309
1319
|
"tier": "core",
|
|
@@ -1393,6 +1403,7 @@ const capabilities = {
|
|
|
1393
1403
|
"effortSurface": "undocumented"
|
|
1394
1404
|
},
|
|
1395
1405
|
"hostBehaviors": {
|
|
1406
|
+
"defaultHomeIncludeRoot": ".copilot",
|
|
1396
1407
|
"reapplyCommand": "/gsd-update --reapply",
|
|
1397
1408
|
"agentFileExtension": ".agent.md",
|
|
1398
1409
|
"skipSharedHooksInstall": true,
|
|
@@ -1404,7 +1415,7 @@ const capabilities = {
|
|
|
1404
1415
|
"cursor": {
|
|
1405
1416
|
"id": "cursor",
|
|
1406
1417
|
"role": "runtime",
|
|
1407
|
-
"version": "1.
|
|
1418
|
+
"version": "1.18.0",
|
|
1408
1419
|
"title": "Cursor",
|
|
1409
1420
|
"description": "Cursor IDE — skills-only workflow surface; hooks.json surface; Claude hook event dialect; recursive skill loader (flat nesting); tier-2 support.",
|
|
1410
1421
|
"tier": "core",
|
|
@@ -1574,7 +1585,7 @@ const capabilities = {
|
|
|
1574
1585
|
"drift": {
|
|
1575
1586
|
"id": "drift",
|
|
1576
1587
|
"role": "feature",
|
|
1577
|
-
"version": "1.
|
|
1588
|
+
"version": "1.18.0",
|
|
1578
1589
|
"title": "Drift detection gates",
|
|
1579
1590
|
"description": "Drift detection gates for the planning loop. At execute:wave:post: a blocking schema drift gate (detects schema files changed without a database push) and a non-blocking codebase drift gate (detects structural additions outside the codebase map and modified or deleted files inside it). At plan:pre: a non-blocking, warn-only codebase drift gate (gated on workflow.plan_drift_precheck) that flags a stale codebase map before planning, so plans are authored against a fresh STRUCTURE.md instead of discovering drift mid-execution.",
|
|
1580
1591
|
"tier": "full",
|
|
@@ -1614,12 +1625,12 @@ const capabilities = {
|
|
|
1614
1625
|
"workflow.plan_drift_precheck": {
|
|
1615
1626
|
"type": "boolean",
|
|
1616
1627
|
"default": true,
|
|
1617
|
-
"description": "Enable the non-blocking codebase drift pre-check at plan:pre, before /gsd
|
|
1628
|
+
"description": "Enable the non-blocking codebase drift pre-check at plan:pre, before /gsd-plan-phase spawns the planner. When enabled, a stale STRUCTURE.md (drift elements exceeding drift_threshold) is surfaced up front as a warn-only advisory pointing to /gsd-map-codebase; it never blocks planning and never spawns the mapper agent. Separate from schema_drift_gate so autonomous/CI runs can silence the plan-time advisory while keeping the execute:wave:post gates enabled."
|
|
1618
1629
|
},
|
|
1619
1630
|
"workflow.context_drift_precheck": {
|
|
1620
1631
|
"type": "boolean",
|
|
1621
1632
|
"default": true,
|
|
1622
|
-
"description": "Enable the non-blocking context-drift pre-check at plan:pre, before /gsd
|
|
1633
|
+
"description": "Enable the non-blocking context-drift pre-check at plan:pre, before /gsd-plan-phase reuses an existing RESEARCH.md/PATTERNS.md/VALIDATION.md/SPEC.md. Compares each artifact's effective last-changed time (git commit time, falling back to mtime for uncommitted edits) against CONTEXT.md's own — an artifact that predates CONTEXT.md's newest decision was derived from a premise that has since changed. Warn-only by default (see workflow.context_drift_action); never blocks planning on its own."
|
|
1623
1634
|
},
|
|
1624
1635
|
"workflow.context_drift_action": {
|
|
1625
1636
|
"type": "enum",
|
|
@@ -1675,7 +1686,7 @@ const capabilities = {
|
|
|
1675
1686
|
"external-job": {
|
|
1676
1687
|
"id": "external-job",
|
|
1677
1688
|
"role": "feature",
|
|
1678
|
-
"version": "1.
|
|
1689
|
+
"version": "1.18.0",
|
|
1679
1690
|
"title": "Async external-job scheduler adapter",
|
|
1680
1691
|
"description": "Default-off producer of the async external-job manifest (#1164). At execute:wave:post an executor can externalize long-running compute (SLURM first, scheduler-pluggable), commit a .planning/async-jobs/<job>.json manifest, defer SUMMARY.md, and return external_job_waiting. The core loop (#1165) consumes the manifest; this capability is the only thing that writes it. NOTE on contribution point: #1164 specifies classification at execute:wave:pre and recording at execute:wave:post. This capability still contributes executor guidance at wave:post; execute-phase now renders wave:pre entries and dispatches generic step hooks there independently. Moving external-job classification to wave:pre is a separate capability change, not part of #4148. The adapter (scripts/slurm-adapter.cjs) reads external_job.submit_timeout_ms / poll_timeout_ms / artifact_dir through the canonical capability-config seam (env override > config > registry default).",
|
|
1681
1692
|
"tier": "full",
|
|
@@ -1758,7 +1769,7 @@ const capabilities = {
|
|
|
1758
1769
|
"gap-analysis": {
|
|
1759
1770
|
"id": "gap-analysis",
|
|
1760
1771
|
"role": "feature",
|
|
1761
|
-
"version": "1.
|
|
1772
|
+
"version": "1.18.0",
|
|
1762
1773
|
"title": "Post-planning gap analysis",
|
|
1763
1774
|
"description": "Proactive, non-blocking post-planning coverage report. After all PLAN.md files are generated, cross-references every REQ-ID and D-ID from REQUIREMENTS.md and CONTEXT.md against plan bodies. Emits a Source | Item | Status table. Does not block phase advancement.",
|
|
1764
1775
|
"tier": "standard",
|
|
@@ -1799,7 +1810,7 @@ const capabilities = {
|
|
|
1799
1810
|
"graphify": {
|
|
1800
1811
|
"id": "graphify",
|
|
1801
1812
|
"role": "feature",
|
|
1802
|
-
"version": "1.
|
|
1813
|
+
"version": "1.18.0",
|
|
1803
1814
|
"title": "Knowledge graph",
|
|
1804
1815
|
"description": "Build, query, and inspect the project knowledge graph in `.planning/graphs/`; exposes graphify CLI subcommands (build, query, status, diff) and the /gsd-graphify skill.",
|
|
1805
1816
|
"tier": "full",
|
|
@@ -1840,7 +1851,7 @@ const capabilities = {
|
|
|
1840
1851
|
"hermes": {
|
|
1841
1852
|
"id": "hermes",
|
|
1842
1853
|
"role": "runtime",
|
|
1843
|
-
"version": "1.
|
|
1854
|
+
"version": "1.18.0",
|
|
1844
1855
|
"title": "Hermes Agent",
|
|
1845
1856
|
"description": "Hermes Agent (NousResearch) — skills nest under skills/gsd/ category bucket; nested skill layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
1846
1857
|
"tier": "core",
|
|
@@ -1911,6 +1922,9 @@ const capabilities = {
|
|
|
1911
1922
|
"extendedHookEvents": [],
|
|
1912
1923
|
"extensionEvents": "hermes",
|
|
1913
1924
|
"hostBehaviors": {
|
|
1925
|
+
"unsupportedFeatures": [
|
|
1926
|
+
"context-warnings"
|
|
1927
|
+
],
|
|
1914
1928
|
"skillFrontmatterVersion": true,
|
|
1915
1929
|
"skillsManifestPrefix": "skills/gsd/",
|
|
1916
1930
|
"trackCategoryDescription": true,
|
|
@@ -1956,7 +1970,7 @@ const capabilities = {
|
|
|
1956
1970
|
"intel": {
|
|
1957
1971
|
"id": "intel",
|
|
1958
1972
|
"role": "feature",
|
|
1959
|
-
"version": "1.
|
|
1973
|
+
"version": "1.18.0",
|
|
1960
1974
|
"title": "Codebase intelligence",
|
|
1961
1975
|
"description": "Code-intelligence store for codebase querying, diff, snapshot, and API-surface extraction; exposes `gsd-tools intel` subcommands (query, status, update, diff, snapshot, patch-meta, validate, extract-exports, api-surface) and backs `/gsd-map-codebase` and `gsd-intel-updater`.",
|
|
1962
1976
|
"tier": "full",
|
|
@@ -2008,7 +2022,7 @@ const capabilities = {
|
|
|
2008
2022
|
"kilo": {
|
|
2009
2023
|
"id": "kilo",
|
|
2010
2024
|
"role": "runtime",
|
|
2011
|
-
"version": "1.
|
|
2025
|
+
"version": "1.18.0",
|
|
2012
2026
|
"title": "Kilo Code",
|
|
2013
2027
|
"description": "Kilo Code — XDG-based config dir; global skills at ~/.kilo/skills (separate from XDG config); flat command/ + skills artifact layout; no lifecycle hook registration; tier-2 support.",
|
|
2014
2028
|
"tier": "core",
|
|
@@ -2142,7 +2156,7 @@ const capabilities = {
|
|
|
2142
2156
|
"kimi": {
|
|
2143
2157
|
"id": "kimi",
|
|
2144
2158
|
"role": "runtime",
|
|
2145
|
-
"version": "1.
|
|
2159
|
+
"version": "1.18.0",
|
|
2146
2160
|
"title": "Kimi CLI",
|
|
2147
2161
|
"description": "Kimi CLI (Moonshot AI) — generic agents root at ~/.config/agents; skills + kimi-agents artifact layout; native config.toml [[hooks]] bus at ~/.kimi/config.toml; background dispatch; tier-2 support.",
|
|
2148
2162
|
"tier": "core",
|
|
@@ -2233,6 +2247,10 @@ const capabilities = {
|
|
|
2233
2247
|
"promptFlag": "--prompt"
|
|
2234
2248
|
},
|
|
2235
2249
|
"hostBehaviors": {
|
|
2250
|
+
"retargetsGsdCoreProsePath": true,
|
|
2251
|
+
"unsupportedFeatures": [
|
|
2252
|
+
"context-warnings"
|
|
2253
|
+
],
|
|
2236
2254
|
"reapplyCommand": "/skill:gsd-update --reapply",
|
|
2237
2255
|
"localInstallDeferred": true,
|
|
2238
2256
|
"verificationStyle": "kimi",
|
|
@@ -2248,7 +2266,7 @@ const capabilities = {
|
|
|
2248
2266
|
"kimi-code": {
|
|
2249
2267
|
"id": "kimi-code",
|
|
2250
2268
|
"role": "runtime",
|
|
2251
|
-
"version": "1.
|
|
2269
|
+
"version": "1.18.0",
|
|
2252
2270
|
"title": "Kimi Code CLI",
|
|
2253
2271
|
"description": "Kimi Code CLI (Moonshot AI, Node) — Agent Skills auto-discovered at ~/.kimi-code/skills; global AGENTS.md at ~/.kimi-code/AGENTS.md; native config.toml + [[hooks]] bus; three built-in subagents (coder/explore/plan), NO custom named subagents; background dispatch; tier-2 support. Distinct from Python kimi-cli (the 'kimi' capability) per ADR-1239 EoS — Kimi Code cannot dispatch named subagents so the kimi-agents YAML layout does NOT apply; persona injection rides the existing ${AGENT_SKILLS_*} workflow fallback. Install-layout, agent-install-check, and install-time decision (kimi vs kimi-code) land in follow-up PRs; this descriptor is the EoS foundation.",
|
|
2254
2272
|
"tier": "core",
|
|
@@ -2349,6 +2367,9 @@ const capabilities = {
|
|
|
2349
2367
|
"promptFlag": "--prompt"
|
|
2350
2368
|
},
|
|
2351
2369
|
"hostBehaviors": {
|
|
2370
|
+
"unsupportedFeatures": [
|
|
2371
|
+
"context-warnings"
|
|
2372
|
+
],
|
|
2352
2373
|
"reapplyCommand": "/skill:gsd-update --reapply",
|
|
2353
2374
|
"localInstallDeferred": true,
|
|
2354
2375
|
"verificationStyle": "kimi-code",
|
|
@@ -2416,7 +2437,7 @@ const capabilities = {
|
|
|
2416
2437
|
"live-dom-uat": {
|
|
2417
2438
|
"id": "live-dom-uat",
|
|
2418
2439
|
"role": "feature",
|
|
2419
|
-
"version": "1.
|
|
2440
|
+
"version": "1.18.0",
|
|
2420
2441
|
"title": "Live-DOM UAT",
|
|
2421
2442
|
"description": "Default-off live-DOM verification (#2856). Confines browser MCP reach to one purpose-built agent (gsd-dom-verifier) that carries the browser globs in its own tools: line, registered as an additive step hook at execute:wave:post. agents/gsd-executor.md is deliberately NOT widened: for a first-party agent the static tool list is the only control that exists, no capability can grant tools to one (ADR-1244 D2), no hook kind grants tool permissions (ADR-857 D4), and there is no per-dispatch tool override. Gated by activationKey workflow.live_dom_uat (default false), so with the key off the capability resolves inactive and the hook does not render at all. NOTE on the browser profile lock: chrome-devtools-mcp holds an exclusive lock on $HOME/.cache/chrome-devtools-mcp/chrome-profile, and --isolated is a flag on the user's own MCP-server registration that GSD cannot pass. Concurrent execution waves sharing one profile will therefore collide; the step tolerates and reports that (onError: skip, never blocking) rather than pretending to coordinate a resource it does not own.",
|
|
2422
2443
|
"tier": "full",
|
|
@@ -2469,9 +2490,9 @@ const capabilities = {
|
|
|
2469
2490
|
"llama-cpp": {
|
|
2470
2491
|
"id": "llama-cpp",
|
|
2471
2492
|
"role": "reviewer",
|
|
2472
|
-
"version": "1.
|
|
2493
|
+
"version": "1.18.0",
|
|
2473
2494
|
"title": "llama.cpp",
|
|
2474
|
-
"description": "llama.cpp server — cross-AI /gsd
|
|
2495
|
+
"description": "llama.cpp server — cross-AI /gsd-review reviewer lane only; not a GSD install target (no runtime body, no artifacts). OpenAI-compatible HTTP transport against a user-configured `review.llama_cpp_host` (POST /v1/chat/completions); model discovered via GET /v1/models piped through jq. Capability id/folder are kebab (`llama-cpp`, required by KEBAB_RE); `reviewer.slug` stays snake (`llama_cpp`) to match the shipped roster and the `review.llama_cpp_host` config key (ADR-2782's three-namespace trap).",
|
|
2475
2496
|
"tier": "full",
|
|
2476
2497
|
"requires": [],
|
|
2477
2498
|
"engines": {
|
|
@@ -2535,9 +2556,9 @@ const capabilities = {
|
|
|
2535
2556
|
"lm-studio": {
|
|
2536
2557
|
"id": "lm-studio",
|
|
2537
2558
|
"role": "reviewer",
|
|
2538
|
-
"version": "1.
|
|
2559
|
+
"version": "1.18.0",
|
|
2539
2560
|
"title": "LM Studio",
|
|
2540
|
-
"description": "LM Studio local model server — cross-AI /gsd
|
|
2561
|
+
"description": "LM Studio local model server — cross-AI /gsd-review reviewer lane only; not a GSD install target (no runtime body, no artifacts). OpenAI-compatible HTTP transport against a user-configured `review.lm_studio_host` (POST /v1/chat/completions); model discovered via GET /v1/models piped through jq. Capability id/folder are kebab (`lm-studio`, required by KEBAB_RE); `reviewer.slug` stays snake (`lm_studio`) to match the shipped roster and the `review.lm_studio_host` config key (ADR-2782's three-namespace trap).",
|
|
2541
2562
|
"tier": "full",
|
|
2542
2563
|
"requires": [],
|
|
2543
2564
|
"engines": {
|
|
@@ -2601,7 +2622,7 @@ const capabilities = {
|
|
|
2601
2622
|
"mempalace": {
|
|
2602
2623
|
"id": "mempalace",
|
|
2603
2624
|
"role": "feature",
|
|
2604
|
-
"version": "1.
|
|
2625
|
+
"version": "1.18.0",
|
|
2605
2626
|
"title": "MemPalace memory",
|
|
2606
2627
|
"description": "Cross-session, cross-project memory: deliberate recall before discuss/plan and verbatim capture + temporal-KG sync at phase boundaries, via the MemPalace MCP server and CLI.",
|
|
2607
2628
|
"tier": "full",
|
|
@@ -2775,7 +2796,7 @@ const capabilities = {
|
|
|
2775
2796
|
"nyquist": {
|
|
2776
2797
|
"id": "nyquist",
|
|
2777
2798
|
"role": "feature",
|
|
2778
|
-
"version": "1.
|
|
2799
|
+
"version": "1.18.0",
|
|
2779
2800
|
"title": "Nyquist validation",
|
|
2780
2801
|
"description": "Validation coverage audit that maps executed work back to tests and manual-only evidence.",
|
|
2781
2802
|
"tier": "full",
|
|
@@ -2825,9 +2846,9 @@ const capabilities = {
|
|
|
2825
2846
|
"ollama": {
|
|
2826
2847
|
"id": "ollama",
|
|
2827
2848
|
"role": "reviewer",
|
|
2828
|
-
"version": "1.
|
|
2849
|
+
"version": "1.18.0",
|
|
2829
2850
|
"title": "Ollama",
|
|
2830
|
-
"description": "Ollama local model server — cross-AI /gsd
|
|
2851
|
+
"description": "Ollama local model server — cross-AI /gsd-review reviewer lane only; not a GSD install target (no runtime body, no artifacts). OpenAI-compatible HTTP transport against a user-configured `review.ollama_host` (POST /v1/chat/completions); model discovered via GET /v1/models piped through jq.",
|
|
2831
2852
|
"tier": "full",
|
|
2832
2853
|
"requires": [],
|
|
2833
2854
|
"engines": {
|
|
@@ -2891,7 +2912,7 @@ const capabilities = {
|
|
|
2891
2912
|
"opencode": {
|
|
2892
2913
|
"id": "opencode",
|
|
2893
2914
|
"role": "runtime",
|
|
2894
|
-
"version": "1.
|
|
2915
|
+
"version": "1.18.0",
|
|
2895
2916
|
"title": "OpenCode",
|
|
2896
2917
|
"description": "OpenCode — XDG-based config dir; flat commands/ + skills artifact layout; settings-json config format; no lifecycle hook registration; tier-2 support.",
|
|
2897
2918
|
"tier": "core",
|
|
@@ -2983,8 +3004,8 @@ const capabilities = {
|
|
|
2983
3004
|
"commandSurface": "slash-file",
|
|
2984
3005
|
"dispatch": {
|
|
2985
3006
|
"namedDispatch": true,
|
|
2986
|
-
"nested":
|
|
2987
|
-
"maxDepth":
|
|
3007
|
+
"nested": false,
|
|
3008
|
+
"maxDepth": 1,
|
|
2988
3009
|
"background": false,
|
|
2989
3010
|
"subagentToolkit": "full",
|
|
2990
3011
|
"backgroundDispatch": false,
|
|
@@ -3017,6 +3038,11 @@ const capabilities = {
|
|
|
3017
3038
|
"file": "gsd-core.js",
|
|
3018
3039
|
"source": ".opencode/plugins/gsd-core.js"
|
|
3019
3040
|
},
|
|
3041
|
+
"nativeCliPlugin": {
|
|
3042
|
+
"dir": "plugins/gsd-statusline",
|
|
3043
|
+
"file": "tui.tsx",
|
|
3044
|
+
"source": ".opencode/plugins/gsd-statusline/tui.tsx"
|
|
3045
|
+
},
|
|
3020
3046
|
"skipHomePrefixSubstitution": true,
|
|
3021
3047
|
"skipSettingsUi": true,
|
|
3022
3048
|
"skipUpdateBannerCommand": true,
|
|
@@ -3090,7 +3116,7 @@ const capabilities = {
|
|
|
3090
3116
|
"pattern-mapper": {
|
|
3091
3117
|
"id": "pattern-mapper",
|
|
3092
3118
|
"role": "feature",
|
|
3093
|
-
"version": "1.
|
|
3119
|
+
"version": "1.18.0",
|
|
3094
3120
|
"title": "Pattern mapping",
|
|
3095
3121
|
"description": "Optional codebase-pattern mapping before planning; owns the pattern mapper agent and workflow.pattern_mapper activation key.",
|
|
3096
3122
|
"tier": "full",
|
|
@@ -3126,7 +3152,7 @@ const capabilities = {
|
|
|
3126
3152
|
},
|
|
3127
3153
|
"fragment": {
|
|
3128
3154
|
"path": "fragments/plan-pre.md",
|
|
3129
|
-
"inline": "<pattern_mapping_context>\n**Phase:** {phase_number} - {phase_name}\n**Phase directory:** {phase_dir}\n**Padded phase:** {padded_phase}\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd
|
|
3155
|
+
"inline": "<pattern_mapping_context>\n**Phase:** {phase_number} - {phase_name}\n**Phase directory:** {phase_dir}\n**Padded phase:** {padded_phase}\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd-discuss-phase)\n- {research_path} (Technical Research)\n</required_reading>\n\n**Output file:** {phase_dir}/{padded_phase}-PATTERNS.md\n\nExtract the list of files to be created/modified from CONTEXT.md and RESEARCH.md. For each file, classify by role and data flow, find the closest existing analog in the codebase, extract concrete code excerpts, and produce PATTERNS.md.\n</pattern_mapping_context>\n"
|
|
3130
3156
|
},
|
|
3131
3157
|
"produces": [
|
|
3132
3158
|
"PATTERNS.md"
|
|
@@ -3144,7 +3170,7 @@ const capabilities = {
|
|
|
3144
3170
|
"pi": {
|
|
3145
3171
|
"id": "pi",
|
|
3146
3172
|
"role": "runtime",
|
|
3147
|
-
"version": "1.
|
|
3173
|
+
"version": "1.18.0",
|
|
3148
3174
|
"title": "pi",
|
|
3149
3175
|
"description": "pi (pi.dev) — bun-runtime programmatic-CLI; TS ExtensionAPI (registerCommand/registerTool/registerProvider/pi.on); single native-extension file at ~/.pi/agent/extensions/gsd.js (.js, not .cjs — pi's extension auto-discovery accepts only .ts/.js, #2470); no shared-settings hook surface; tier-2 support.",
|
|
3150
3176
|
"tier": "core",
|
|
@@ -3214,7 +3240,7 @@ const capabilities = {
|
|
|
3214
3240
|
"profile-pipeline": {
|
|
3215
3241
|
"id": "profile-pipeline",
|
|
3216
3242
|
"role": "feature",
|
|
3217
|
-
"version": "1.
|
|
3243
|
+
"version": "1.18.0",
|
|
3218
3244
|
"title": "Developer profiling pipeline",
|
|
3219
3245
|
"description": "Developer behavioral profiling from Claude Code session history; scans session JSONL files, extracts and samples user messages, and generates profile artifacts (USER-PROFILE.md, dev-preferences.md, CLAUDE.md sections). Exposes eight `gsd-tools` commands: scan-sessions, extract-messages, profile-sample (pipeline phase) and write-profile, profile-questionnaire, generate-dev-preferences, generate-claude-profile, generate-claude-md (output phase). Backs the /gsd-profile-user skill and gsd-user-profiler agent.",
|
|
3220
3246
|
"tier": "full",
|
|
@@ -3291,7 +3317,7 @@ const capabilities = {
|
|
|
3291
3317
|
"qwen": {
|
|
3292
3318
|
"id": "qwen",
|
|
3293
3319
|
"role": "runtime",
|
|
3294
|
-
"version": "1.
|
|
3320
|
+
"version": "1.18.0",
|
|
3295
3321
|
"title": "Qwen Code",
|
|
3296
3322
|
"description": "Qwen Code (Alibaba) — nested-skill artifact layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
3297
3323
|
"tier": "core",
|
|
@@ -3386,6 +3412,9 @@ const capabilities = {
|
|
|
3386
3412
|
"effortSurface": "undocumented"
|
|
3387
3413
|
},
|
|
3388
3414
|
"hostBehaviors": {
|
|
3415
|
+
"unsupportedFeatures": [
|
|
3416
|
+
"context-warnings"
|
|
3417
|
+
],
|
|
3389
3418
|
"skillPriorityFrontmatter": true,
|
|
3390
3419
|
"brandingRewrites": {
|
|
3391
3420
|
"CLAUDE.md": "QWEN.md",
|
|
@@ -3442,7 +3471,7 @@ const capabilities = {
|
|
|
3442
3471
|
"refactor-trigger": {
|
|
3443
3472
|
"id": "refactor-trigger",
|
|
3444
3473
|
"role": "feature",
|
|
3445
|
-
"version": "1.
|
|
3474
|
+
"version": "1.18.0",
|
|
3446
3475
|
"title": "Complexity-triggered refactor",
|
|
3447
3476
|
"description": "Measures the complexity of the code a phase touched and, when a function crosses a configured threshold or jumps past its recorded anchor, surfaces a scoped refactor proposal at .planning/phases/<N>/<NN>-REFACTOR.md. Advisory by default — it never edits code and never blocks. Opt-in strict mode blocks /gsd-ship while a proposal is untriaged; a declined proposal is recorded in the broken-windows ledger when that capability is present. Operationalizes 'refactor early, refactor often' as continuous pressure instead of a thing you have to remember (issue #1953).",
|
|
3448
3477
|
"tier": "full",
|
|
@@ -3509,7 +3538,7 @@ const capabilities = {
|
|
|
3509
3538
|
"research": {
|
|
3510
3539
|
"id": "research",
|
|
3511
3540
|
"role": "feature",
|
|
3512
|
-
"version": "1.
|
|
3541
|
+
"version": "1.18.0",
|
|
3513
3542
|
"title": "Phase research",
|
|
3514
3543
|
"description": "Optional phase research before planning; owns the phase researcher agent and workflow.research activation key.",
|
|
3515
3544
|
"tier": "standard",
|
|
@@ -3543,7 +3572,7 @@ const capabilities = {
|
|
|
3543
3572
|
},
|
|
3544
3573
|
"fragment": {
|
|
3545
3574
|
"path": "fragments/plan-pre.md",
|
|
3546
|
-
"inline": "<objective>\nResearch how to implement Phase {phase_number}: {phase_name}\nAnswer: \"What do I need to know to PLAN this phase well?\"\n</objective>\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd
|
|
3575
|
+
"inline": "<objective>\nResearch how to implement Phase {phase_number}: {phase_name}\nAnswer: \"What do I need to know to PLAN this phase well?\"\n</objective>\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd-discuss-phase)\n- {requirements_path} (Project requirements)\n- {state_path} (Project decisions and history)\n</required_reading>\n\n${AGENT_SKILLS_RESEARCHER}\n\n<additional_context>\n**Phase description:** {phase_description}\n**Phase requirement IDs (MUST address):** {phase_req_ids}\n\n**Project instructions:** Read ./CLAUDE.md or ./.claude/CLAUDE.md if either exists; follow project-specific guidelines.\n**Project skills:** Check .claude/skills/ or .agents/skills/ directory if either exists. Read SKILL.md files and account for project skill patterns.\n</additional_context>\n\n<output>\nWrite to: {phase_dir}/{phase_num}-RESEARCH.md\n</output>\n"
|
|
3547
3576
|
},
|
|
3548
3577
|
"produces": [
|
|
3549
3578
|
"RESEARCH.md"
|
|
@@ -3561,7 +3590,7 @@ const capabilities = {
|
|
|
3561
3590
|
"schema-gate": {
|
|
3562
3591
|
"id": "schema-gate",
|
|
3563
3592
|
"role": "feature",
|
|
3564
|
-
"version": "1.
|
|
3593
|
+
"version": "1.18.0",
|
|
3565
3594
|
"title": "Schema push detection gate",
|
|
3566
3595
|
"description": "Detects ORM schema-relevant files in the phase scope during planning and injects a mandatory [BLOCKING] schema push task into the plan. Prevents false-positive verification where build/types pass because TypeScript types come from config, not the live database.",
|
|
3567
3596
|
"tier": "full",
|
|
@@ -3607,7 +3636,7 @@ const capabilities = {
|
|
|
3607
3636
|
"security": {
|
|
3608
3637
|
"id": "security",
|
|
3609
3638
|
"role": "feature",
|
|
3610
|
-
"version": "1.
|
|
3639
|
+
"version": "1.18.0",
|
|
3611
3640
|
"title": "Security enforcement",
|
|
3612
3641
|
"description": "Threat mitigation verification and ship-time security blocking for phases with security enforcement enabled.",
|
|
3613
3642
|
"tier": "full",
|
|
@@ -3706,7 +3735,7 @@ const capabilities = {
|
|
|
3706
3735
|
"tdd": {
|
|
3707
3736
|
"id": "tdd",
|
|
3708
3737
|
"role": "feature",
|
|
3709
|
-
"version": "1.
|
|
3738
|
+
"version": "1.18.0",
|
|
3710
3739
|
"title": "Test-driven development",
|
|
3711
3740
|
"description": "Injects TDD heuristics into the planner and enforces RED/GREEN gate compliance on type:tdd plans after execution. Owns workflow.tdd_mode; the --tdd CLI flag is the ephemeral override.",
|
|
3712
3741
|
"tier": "full",
|
|
@@ -3759,7 +3788,7 @@ const capabilities = {
|
|
|
3759
3788
|
"trae": {
|
|
3760
3789
|
"id": "trae",
|
|
3761
3790
|
"role": "runtime",
|
|
3762
|
-
"version": "1.
|
|
3791
|
+
"version": "1.18.0",
|
|
3763
3792
|
"title": "Trae IDE",
|
|
3764
3793
|
"description": "Trae IDE — nested-skill artifact layout; no hook surface (profile-marker-only config); tier-2 support.",
|
|
3765
3794
|
"tier": "core",
|
|
@@ -3858,7 +3887,7 @@ const capabilities = {
|
|
|
3858
3887
|
"ui": {
|
|
3859
3888
|
"id": "ui",
|
|
3860
3889
|
"role": "feature",
|
|
3861
|
-
"version": "1.
|
|
3890
|
+
"version": "1.18.0",
|
|
3862
3891
|
"title": "UI design contracts",
|
|
3863
3892
|
"description": "UI-SPEC design contract + retrospective UI audit for frontend phases.",
|
|
3864
3893
|
"tier": "full",
|
|
@@ -3958,7 +3987,7 @@ const capabilities = {
|
|
|
3958
3987
|
"vscode": {
|
|
3959
3988
|
"id": "vscode",
|
|
3960
3989
|
"role": "runtime",
|
|
3961
|
-
"version": "1.
|
|
3990
|
+
"version": "1.18.0",
|
|
3962
3991
|
"title": "VS Code",
|
|
3963
3992
|
"description": "VS Code — Marketplace/VSIX extension; no file-projected config directory; IDE-profile reference host (active vscode.lm model, engine-owned hook bus, sandboxed globalState/workspaceState stateIO).",
|
|
3964
3993
|
"tier": "core",
|
|
@@ -4016,7 +4045,7 @@ const capabilities = {
|
|
|
4016
4045
|
"windsurf": {
|
|
4017
4046
|
"id": "windsurf",
|
|
4018
4047
|
"role": "runtime",
|
|
4019
|
-
"version": "1.
|
|
4048
|
+
"version": "1.18.0",
|
|
4020
4049
|
"title": "Windsurf",
|
|
4021
4050
|
"description": "Windsurf (Codeium) — workspace workflow artifact layout for slash commands; Cascade native hooks.json blocking hook bus (pre_write_code, pre_run_command); tier-2 support.",
|
|
4022
4051
|
"tier": "core",
|
|
@@ -4109,7 +4138,7 @@ const capabilities = {
|
|
|
4109
4138
|
"zcode": {
|
|
4110
4139
|
"id": "zcode",
|
|
4111
4140
|
"role": "runtime",
|
|
4112
|
-
"version": "1.
|
|
4141
|
+
"version": "1.18.0",
|
|
4113
4142
|
"title": "ZCode",
|
|
4114
4143
|
"description": "ZCode (Z.ai) — desktop Agentic Development Environment for GLM-5.2; Claude-shaped nested skills at ~/.zcode/skills/<name>/SKILL.md, slash commands, named subagents, native MCP; declarative plugin surface; profile-marker install; tier-2 community support.",
|
|
4115
4144
|
"tier": "core",
|
|
@@ -4344,7 +4373,7 @@ const byLoopPoint = {
|
|
|
4344
4373
|
},
|
|
4345
4374
|
"fragment": {
|
|
4346
4375
|
"path": "fragments/plan-pre.md",
|
|
4347
|
-
"inline": "<objective>\nResearch how to implement Phase {phase_number}: {phase_name}\nAnswer: \"What do I need to know to PLAN this phase well?\"\n</objective>\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd
|
|
4376
|
+
"inline": "<objective>\nResearch how to implement Phase {phase_number}: {phase_name}\nAnswer: \"What do I need to know to PLAN this phase well?\"\n</objective>\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd-discuss-phase)\n- {requirements_path} (Project requirements)\n- {state_path} (Project decisions and history)\n</required_reading>\n\n${AGENT_SKILLS_RESEARCHER}\n\n<additional_context>\n**Phase description:** {phase_description}\n**Phase requirement IDs (MUST address):** {phase_req_ids}\n\n**Project instructions:** Read ./CLAUDE.md or ./.claude/CLAUDE.md if either exists; follow project-specific guidelines.\n**Project skills:** Check .claude/skills/ or .agents/skills/ directory if either exists. Read SKILL.md files and account for project skill patterns.\n</additional_context>\n\n<output>\nWrite to: {phase_dir}/{phase_num}-RESEARCH.md\n</output>\n"
|
|
4348
4377
|
},
|
|
4349
4378
|
"produces": [
|
|
4350
4379
|
"RESEARCH.md"
|
|
@@ -4378,7 +4407,7 @@ const byLoopPoint = {
|
|
|
4378
4407
|
},
|
|
4379
4408
|
"fragment": {
|
|
4380
4409
|
"path": "fragments/plan-pre.md",
|
|
4381
|
-
"inline": "<pattern_mapping_context>\n**Phase:** {phase_number} - {phase_name}\n**Phase directory:** {phase_dir}\n**Padded phase:** {padded_phase}\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd
|
|
4410
|
+
"inline": "<pattern_mapping_context>\n**Phase:** {phase_number} - {phase_name}\n**Phase directory:** {phase_dir}\n**Padded phase:** {padded_phase}\n\n<required_reading>\n- {context_path} (USER DECISIONS from /gsd-discuss-phase)\n- {research_path} (Technical Research)\n</required_reading>\n\n**Output file:** {phase_dir}/{padded_phase}-PATTERNS.md\n\nExtract the list of files to be created/modified from CONTEXT.md and RESEARCH.md. For each file, classify by role and data flow, find the closest existing analog in the codebase, extract concrete code excerpts, and produce PATTERNS.md.\n</pattern_mapping_context>\n"
|
|
4382
4411
|
},
|
|
4383
4412
|
"produces": [
|
|
4384
4413
|
"PATTERNS.md"
|
|
@@ -5130,13 +5159,13 @@ const configSchema = {
|
|
|
5130
5159
|
"owner": "drift",
|
|
5131
5160
|
"type": "boolean",
|
|
5132
5161
|
"default": true,
|
|
5133
|
-
"description": "Enable the non-blocking codebase drift pre-check at plan:pre, before /gsd
|
|
5162
|
+
"description": "Enable the non-blocking codebase drift pre-check at plan:pre, before /gsd-plan-phase spawns the planner. When enabled, a stale STRUCTURE.md (drift elements exceeding drift_threshold) is surfaced up front as a warn-only advisory pointing to /gsd-map-codebase; it never blocks planning and never spawns the mapper agent. Separate from schema_drift_gate so autonomous/CI runs can silence the plan-time advisory while keeping the execute:wave:post gates enabled."
|
|
5134
5163
|
},
|
|
5135
5164
|
"workflow.context_drift_precheck": {
|
|
5136
5165
|
"owner": "drift",
|
|
5137
5166
|
"type": "boolean",
|
|
5138
5167
|
"default": true,
|
|
5139
|
-
"description": "Enable the non-blocking context-drift pre-check at plan:pre, before /gsd
|
|
5168
|
+
"description": "Enable the non-blocking context-drift pre-check at plan:pre, before /gsd-plan-phase reuses an existing RESEARCH.md/PATTERNS.md/VALIDATION.md/SPEC.md. Compares each artifact's effective last-changed time (git commit time, falling back to mtime for uncommitted edits) against CONTEXT.md's own — an artifact that predates CONTEXT.md's newest decision was derived from a premise that has since changed. Warn-only by default (see workflow.context_drift_action); never blocks planning on its own."
|
|
5140
5169
|
},
|
|
5141
5170
|
"workflow.context_drift_action": {
|
|
5142
5171
|
"owner": "drift",
|
|
@@ -5505,7 +5534,7 @@ const runtimes = {
|
|
|
5505
5534
|
"antigravity": {
|
|
5506
5535
|
"id": "antigravity",
|
|
5507
5536
|
"role": "runtime",
|
|
5508
|
-
"version": "1.
|
|
5537
|
+
"version": "1.18.0",
|
|
5509
5538
|
"title": "Antigravity",
|
|
5510
5539
|
"description": "Google Antigravity IDE — config/settings home nested under ~/.gemini/antigravity (probed across 1.x and 2.x layouts); global skills/agents install under ~/.gemini/config, the dir AGY scans for global discovery (#3738); Gemini hook event dialect; flat skill layout; tier-1 support.",
|
|
5511
5540
|
"tier": "core",
|
|
@@ -5604,6 +5633,10 @@ const runtimes = {
|
|
|
5604
5633
|
"effortSurface": "undocumented"
|
|
5605
5634
|
},
|
|
5606
5635
|
"hostBehaviors": {
|
|
5636
|
+
"defaultHomeIncludeRoot": ".gemini/antigravity",
|
|
5637
|
+
"unsupportedFeatures": [
|
|
5638
|
+
"context-warnings"
|
|
5639
|
+
],
|
|
5607
5640
|
"projectInstructionFile": "GEMINI.md",
|
|
5608
5641
|
"noPathRewrite": true,
|
|
5609
5642
|
"hookPathStyle": "raw",
|
|
@@ -5669,7 +5702,7 @@ const runtimes = {
|
|
|
5669
5702
|
"augment": {
|
|
5670
5703
|
"id": "augment",
|
|
5671
5704
|
"role": "runtime",
|
|
5672
|
-
"version": "1.
|
|
5705
|
+
"version": "1.18.0",
|
|
5673
5706
|
"title": "Augment Code",
|
|
5674
5707
|
"description": "Augment Code CLI — commands + nested-skill artifact layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
5675
5708
|
"tier": "core",
|
|
@@ -5755,6 +5788,9 @@ const runtimes = {
|
|
|
5755
5788
|
"permissionWriter": null,
|
|
5756
5789
|
"extendedHookEvents": [],
|
|
5757
5790
|
"hostBehaviors": {
|
|
5791
|
+
"unsupportedFeatures": [
|
|
5792
|
+
"context-warnings"
|
|
5793
|
+
],
|
|
5758
5794
|
"commandBodyConverter": "convertClaudeToAugmentMarkdown",
|
|
5759
5795
|
"mcpCompanion": "settings-json",
|
|
5760
5796
|
"contentRewriteProfile": "slash-lookahead-own-derived"
|
|
@@ -5784,7 +5820,7 @@ const runtimes = {
|
|
|
5784
5820
|
"claude": {
|
|
5785
5821
|
"id": "claude",
|
|
5786
5822
|
"role": "runtime",
|
|
5787
|
-
"version": "1.
|
|
5823
|
+
"version": "1.18.0",
|
|
5788
5824
|
"title": "Claude Code",
|
|
5789
5825
|
"description": "Anthropic Claude Code — primary development runtime; tier-1 support with full hook surface and skills-based global install.",
|
|
5790
5826
|
"tier": "core",
|
|
@@ -5972,7 +6008,7 @@ const runtimes = {
|
|
|
5972
6008
|
"cline": {
|
|
5973
6009
|
"id": "cline",
|
|
5974
6010
|
"role": "runtime",
|
|
5975
|
-
"version": "1.
|
|
6011
|
+
"version": "1.18.0",
|
|
5976
6012
|
"title": "Cline",
|
|
5977
6013
|
"description": "Cline (VS Code extension) — global-only nested-skill layout; cline-rules hook surface (.clinerules); no hook events emitted; tier-2 support.",
|
|
5978
6014
|
"tier": "core",
|
|
@@ -6066,7 +6102,7 @@ const runtimes = {
|
|
|
6066
6102
|
"codebuddy": {
|
|
6067
6103
|
"id": "codebuddy",
|
|
6068
6104
|
"role": "runtime",
|
|
6069
|
-
"version": "1.
|
|
6105
|
+
"version": "1.18.0",
|
|
6070
6106
|
"title": "CodeBuddy",
|
|
6071
6107
|
"description": "CodeBuddy (Tencent) — converted commands + skills artifact layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
6072
6108
|
"tier": "core",
|
|
@@ -6177,6 +6213,9 @@ const runtimes = {
|
|
|
6177
6213
|
"effortSurface": "undocumented"
|
|
6178
6214
|
},
|
|
6179
6215
|
"hostBehaviors": {
|
|
6216
|
+
"unsupportedFeatures": [
|
|
6217
|
+
"context-warnings"
|
|
6218
|
+
],
|
|
6180
6219
|
"reportCommandsDir": true,
|
|
6181
6220
|
"contentRewriteProfile": "slash-bare-own-tilde-bare"
|
|
6182
6221
|
}
|
|
@@ -6185,7 +6224,7 @@ const runtimes = {
|
|
|
6185
6224
|
"codex": {
|
|
6186
6225
|
"id": "codex",
|
|
6187
6226
|
"role": "runtime",
|
|
6188
|
-
"version": "1.
|
|
6227
|
+
"version": "1.18.0",
|
|
6189
6228
|
"title": "OpenAI Codex CLI",
|
|
6190
6229
|
"description": "OpenAI Codex CLI — shell-var command style; per-agent sandbox tiers; config.toml + hooks.json hook surface; tier-1 support.",
|
|
6191
6230
|
"tier": "core",
|
|
@@ -6372,7 +6411,7 @@ const runtimes = {
|
|
|
6372
6411
|
"copilot": {
|
|
6373
6412
|
"id": "copilot",
|
|
6374
6413
|
"role": "runtime",
|
|
6375
|
-
"version": "1.
|
|
6414
|
+
"version": "1.18.0",
|
|
6376
6415
|
"title": "GitHub Copilot",
|
|
6377
6416
|
"description": "GitHub Copilot (VS Code) — markdown config format; copilot-inline hook surface; no hook events emitted; flat skill nesting (unconfirmed recursive loader); tier-2 support.",
|
|
6378
6417
|
"tier": "core",
|
|
@@ -6462,6 +6501,7 @@ const runtimes = {
|
|
|
6462
6501
|
"effortSurface": "undocumented"
|
|
6463
6502
|
},
|
|
6464
6503
|
"hostBehaviors": {
|
|
6504
|
+
"defaultHomeIncludeRoot": ".copilot",
|
|
6465
6505
|
"reapplyCommand": "/gsd-update --reapply",
|
|
6466
6506
|
"agentFileExtension": ".agent.md",
|
|
6467
6507
|
"skipSharedHooksInstall": true,
|
|
@@ -6473,7 +6513,7 @@ const runtimes = {
|
|
|
6473
6513
|
"cursor": {
|
|
6474
6514
|
"id": "cursor",
|
|
6475
6515
|
"role": "runtime",
|
|
6476
|
-
"version": "1.
|
|
6516
|
+
"version": "1.18.0",
|
|
6477
6517
|
"title": "Cursor",
|
|
6478
6518
|
"description": "Cursor IDE — skills-only workflow surface; hooks.json surface; Claude hook event dialect; recursive skill loader (flat nesting); tier-2 support.",
|
|
6479
6519
|
"tier": "core",
|
|
@@ -6643,7 +6683,7 @@ const runtimes = {
|
|
|
6643
6683
|
"hermes": {
|
|
6644
6684
|
"id": "hermes",
|
|
6645
6685
|
"role": "runtime",
|
|
6646
|
-
"version": "1.
|
|
6686
|
+
"version": "1.18.0",
|
|
6647
6687
|
"title": "Hermes Agent",
|
|
6648
6688
|
"description": "Hermes Agent (NousResearch) — skills nest under skills/gsd/ category bucket; nested skill layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
6649
6689
|
"tier": "core",
|
|
@@ -6714,6 +6754,9 @@ const runtimes = {
|
|
|
6714
6754
|
"extendedHookEvents": [],
|
|
6715
6755
|
"extensionEvents": "hermes",
|
|
6716
6756
|
"hostBehaviors": {
|
|
6757
|
+
"unsupportedFeatures": [
|
|
6758
|
+
"context-warnings"
|
|
6759
|
+
],
|
|
6717
6760
|
"skillFrontmatterVersion": true,
|
|
6718
6761
|
"skillsManifestPrefix": "skills/gsd/",
|
|
6719
6762
|
"trackCategoryDescription": true,
|
|
@@ -6759,7 +6802,7 @@ const runtimes = {
|
|
|
6759
6802
|
"kilo": {
|
|
6760
6803
|
"id": "kilo",
|
|
6761
6804
|
"role": "runtime",
|
|
6762
|
-
"version": "1.
|
|
6805
|
+
"version": "1.18.0",
|
|
6763
6806
|
"title": "Kilo Code",
|
|
6764
6807
|
"description": "Kilo Code — XDG-based config dir; global skills at ~/.kilo/skills (separate from XDG config); flat command/ + skills artifact layout; no lifecycle hook registration; tier-2 support.",
|
|
6765
6808
|
"tier": "core",
|
|
@@ -6893,7 +6936,7 @@ const runtimes = {
|
|
|
6893
6936
|
"kimi": {
|
|
6894
6937
|
"id": "kimi",
|
|
6895
6938
|
"role": "runtime",
|
|
6896
|
-
"version": "1.
|
|
6939
|
+
"version": "1.18.0",
|
|
6897
6940
|
"title": "Kimi CLI",
|
|
6898
6941
|
"description": "Kimi CLI (Moonshot AI) — generic agents root at ~/.config/agents; skills + kimi-agents artifact layout; native config.toml [[hooks]] bus at ~/.kimi/config.toml; background dispatch; tier-2 support.",
|
|
6899
6942
|
"tier": "core",
|
|
@@ -6984,6 +7027,10 @@ const runtimes = {
|
|
|
6984
7027
|
"promptFlag": "--prompt"
|
|
6985
7028
|
},
|
|
6986
7029
|
"hostBehaviors": {
|
|
7030
|
+
"retargetsGsdCoreProsePath": true,
|
|
7031
|
+
"unsupportedFeatures": [
|
|
7032
|
+
"context-warnings"
|
|
7033
|
+
],
|
|
6987
7034
|
"reapplyCommand": "/skill:gsd-update --reapply",
|
|
6988
7035
|
"localInstallDeferred": true,
|
|
6989
7036
|
"verificationStyle": "kimi",
|
|
@@ -6999,7 +7046,7 @@ const runtimes = {
|
|
|
6999
7046
|
"kimi-code": {
|
|
7000
7047
|
"id": "kimi-code",
|
|
7001
7048
|
"role": "runtime",
|
|
7002
|
-
"version": "1.
|
|
7049
|
+
"version": "1.18.0",
|
|
7003
7050
|
"title": "Kimi Code CLI",
|
|
7004
7051
|
"description": "Kimi Code CLI (Moonshot AI, Node) — Agent Skills auto-discovered at ~/.kimi-code/skills; global AGENTS.md at ~/.kimi-code/AGENTS.md; native config.toml + [[hooks]] bus; three built-in subagents (coder/explore/plan), NO custom named subagents; background dispatch; tier-2 support. Distinct from Python kimi-cli (the 'kimi' capability) per ADR-1239 EoS — Kimi Code cannot dispatch named subagents so the kimi-agents YAML layout does NOT apply; persona injection rides the existing ${AGENT_SKILLS_*} workflow fallback. Install-layout, agent-install-check, and install-time decision (kimi vs kimi-code) land in follow-up PRs; this descriptor is the EoS foundation.",
|
|
7005
7052
|
"tier": "core",
|
|
@@ -7100,6 +7147,9 @@ const runtimes = {
|
|
|
7100
7147
|
"promptFlag": "--prompt"
|
|
7101
7148
|
},
|
|
7102
7149
|
"hostBehaviors": {
|
|
7150
|
+
"unsupportedFeatures": [
|
|
7151
|
+
"context-warnings"
|
|
7152
|
+
],
|
|
7103
7153
|
"reapplyCommand": "/skill:gsd-update --reapply",
|
|
7104
7154
|
"localInstallDeferred": true,
|
|
7105
7155
|
"verificationStyle": "kimi-code",
|
|
@@ -7167,7 +7217,7 @@ const runtimes = {
|
|
|
7167
7217
|
"opencode": {
|
|
7168
7218
|
"id": "opencode",
|
|
7169
7219
|
"role": "runtime",
|
|
7170
|
-
"version": "1.
|
|
7220
|
+
"version": "1.18.0",
|
|
7171
7221
|
"title": "OpenCode",
|
|
7172
7222
|
"description": "OpenCode — XDG-based config dir; flat commands/ + skills artifact layout; settings-json config format; no lifecycle hook registration; tier-2 support.",
|
|
7173
7223
|
"tier": "core",
|
|
@@ -7259,8 +7309,8 @@ const runtimes = {
|
|
|
7259
7309
|
"commandSurface": "slash-file",
|
|
7260
7310
|
"dispatch": {
|
|
7261
7311
|
"namedDispatch": true,
|
|
7262
|
-
"nested":
|
|
7263
|
-
"maxDepth":
|
|
7312
|
+
"nested": false,
|
|
7313
|
+
"maxDepth": 1,
|
|
7264
7314
|
"background": false,
|
|
7265
7315
|
"subagentToolkit": "full",
|
|
7266
7316
|
"backgroundDispatch": false,
|
|
@@ -7293,6 +7343,11 @@ const runtimes = {
|
|
|
7293
7343
|
"file": "gsd-core.js",
|
|
7294
7344
|
"source": ".opencode/plugins/gsd-core.js"
|
|
7295
7345
|
},
|
|
7346
|
+
"nativeCliPlugin": {
|
|
7347
|
+
"dir": "plugins/gsd-statusline",
|
|
7348
|
+
"file": "tui.tsx",
|
|
7349
|
+
"source": ".opencode/plugins/gsd-statusline/tui.tsx"
|
|
7350
|
+
},
|
|
7296
7351
|
"skipHomePrefixSubstitution": true,
|
|
7297
7352
|
"skipSettingsUi": true,
|
|
7298
7353
|
"skipUpdateBannerCommand": true,
|
|
@@ -7366,7 +7421,7 @@ const runtimes = {
|
|
|
7366
7421
|
"pi": {
|
|
7367
7422
|
"id": "pi",
|
|
7368
7423
|
"role": "runtime",
|
|
7369
|
-
"version": "1.
|
|
7424
|
+
"version": "1.18.0",
|
|
7370
7425
|
"title": "pi",
|
|
7371
7426
|
"description": "pi (pi.dev) — bun-runtime programmatic-CLI; TS ExtensionAPI (registerCommand/registerTool/registerProvider/pi.on); single native-extension file at ~/.pi/agent/extensions/gsd.js (.js, not .cjs — pi's extension auto-discovery accepts only .ts/.js, #2470); no shared-settings hook surface; tier-2 support.",
|
|
7372
7427
|
"tier": "core",
|
|
@@ -7436,7 +7491,7 @@ const runtimes = {
|
|
|
7436
7491
|
"qwen": {
|
|
7437
7492
|
"id": "qwen",
|
|
7438
7493
|
"role": "runtime",
|
|
7439
|
-
"version": "1.
|
|
7494
|
+
"version": "1.18.0",
|
|
7440
7495
|
"title": "Qwen Code",
|
|
7441
7496
|
"description": "Qwen Code (Alibaba) — nested-skill artifact layout; settings-json hook surface; Claude hook event dialect; tier-2 support.",
|
|
7442
7497
|
"tier": "core",
|
|
@@ -7531,6 +7586,9 @@ const runtimes = {
|
|
|
7531
7586
|
"effortSurface": "undocumented"
|
|
7532
7587
|
},
|
|
7533
7588
|
"hostBehaviors": {
|
|
7589
|
+
"unsupportedFeatures": [
|
|
7590
|
+
"context-warnings"
|
|
7591
|
+
],
|
|
7534
7592
|
"skillPriorityFrontmatter": true,
|
|
7535
7593
|
"brandingRewrites": {
|
|
7536
7594
|
"CLAUDE.md": "QWEN.md",
|
|
@@ -7587,7 +7645,7 @@ const runtimes = {
|
|
|
7587
7645
|
"trae": {
|
|
7588
7646
|
"id": "trae",
|
|
7589
7647
|
"role": "runtime",
|
|
7590
|
-
"version": "1.
|
|
7648
|
+
"version": "1.18.0",
|
|
7591
7649
|
"title": "Trae IDE",
|
|
7592
7650
|
"description": "Trae IDE — nested-skill artifact layout; no hook surface (profile-marker-only config); tier-2 support.",
|
|
7593
7651
|
"tier": "core",
|
|
@@ -7686,7 +7744,7 @@ const runtimes = {
|
|
|
7686
7744
|
"vscode": {
|
|
7687
7745
|
"id": "vscode",
|
|
7688
7746
|
"role": "runtime",
|
|
7689
|
-
"version": "1.
|
|
7747
|
+
"version": "1.18.0",
|
|
7690
7748
|
"title": "VS Code",
|
|
7691
7749
|
"description": "VS Code — Marketplace/VSIX extension; no file-projected config directory; IDE-profile reference host (active vscode.lm model, engine-owned hook bus, sandboxed globalState/workspaceState stateIO).",
|
|
7692
7750
|
"tier": "core",
|
|
@@ -7744,7 +7802,7 @@ const runtimes = {
|
|
|
7744
7802
|
"windsurf": {
|
|
7745
7803
|
"id": "windsurf",
|
|
7746
7804
|
"role": "runtime",
|
|
7747
|
-
"version": "1.
|
|
7805
|
+
"version": "1.18.0",
|
|
7748
7806
|
"title": "Windsurf",
|
|
7749
7807
|
"description": "Windsurf (Codeium) — workspace workflow artifact layout for slash commands; Cascade native hooks.json blocking hook bus (pre_write_code, pre_run_command); tier-2 support.",
|
|
7750
7808
|
"tier": "core",
|
|
@@ -7837,7 +7895,7 @@ const runtimes = {
|
|
|
7837
7895
|
"zcode": {
|
|
7838
7896
|
"id": "zcode",
|
|
7839
7897
|
"role": "runtime",
|
|
7840
|
-
"version": "1.
|
|
7898
|
+
"version": "1.18.0",
|
|
7841
7899
|
"title": "ZCode",
|
|
7842
7900
|
"description": "ZCode (Z.ai) — desktop Agentic Development Environment for GLM-5.2; Claude-shaped nested skills at ~/.zcode/skills/<name>/SKILL.md, slash commands, named subagents, native MCP; declarative plugin surface; profile-marker install; tier-2 community support.",
|
|
7843
7901
|
"tier": "core",
|