sauron-cli 1.3.0 → 1.4.1
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/.genesis/prompts/CLI Init_ Atualiza/303/247/303/243o com Mem/303/263ria.md" +133 -0
- package/.genesis/prompts/prompt-sauron-update-intelligence.md +20 -0
- package/README.md +4 -2
- package/dist/index.js +59 -15
- package/package.json +1 -1
- package/templates/.agents/rules/memory.md +68 -68
- package/templates/.agents/skills/wiki/SKILL.md +14 -14
- package/55ea973d-e255-4f08-a313-a5d68243bd2d.png +0 -0
- package/OpenSpec-main/.actrc +0 -1
- package/OpenSpec-main/.changeset/README.md +0 -97
- package/OpenSpec-main/.changeset/config.json +0 -15
- package/OpenSpec-main/.coderabbit.yaml +0 -11
- package/OpenSpec-main/.devcontainer/README.md +0 -92
- package/OpenSpec-main/.devcontainer/devcontainer.json +0 -68
- package/OpenSpec-main/.github/CODEOWNERS +0 -2
- package/OpenSpec-main/.github/workflows/README.md +0 -20
- package/OpenSpec-main/.github/workflows/ci.yml +0 -346
- package/OpenSpec-main/.github/workflows/release-prepare.yml +0 -60
- package/OpenSpec-main/CHANGELOG.md +0 -594
- package/OpenSpec-main/LICENSE +0 -22
- package/OpenSpec-main/MAINTAINERS.md +0 -17
- package/OpenSpec-main/README.md +0 -206
- package/OpenSpec-main/README_OLD.md +0 -475
- package/OpenSpec-main/assets/openspec_bg.png +0 -0
- package/OpenSpec-main/assets/openspec_dashboard.png +0 -0
- package/OpenSpec-main/assets/openspec_pixel_dark.svg +0 -89
- package/OpenSpec-main/assets/openspec_pixel_light.svg +0 -89
- package/OpenSpec-main/bin/openspec.js +0 -5
- package/OpenSpec-main/build.js +0 -31
- package/OpenSpec-main/eslint.config.js +0 -42
- package/OpenSpec-main/flake.lock +0 -27
- package/OpenSpec-main/flake.nix +0 -114
- package/OpenSpec-main/openspec/changes/IMPLEMENTATION_ORDER.md +0 -68
- package/OpenSpec-main/openspec/changes/add-artifact-regeneration-support/proposal.md +0 -136
- package/OpenSpec-main/openspec/changes/add-change-stacking-awareness/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/add-change-stacking-awareness/proposal.md +0 -93
- package/OpenSpec-main/openspec/changes/add-change-stacking-awareness/specs/change-creation/spec.md +0 -15
- package/OpenSpec-main/openspec/changes/add-change-stacking-awareness/specs/change-stacking-workflow/spec.md +0 -65
- package/OpenSpec-main/openspec/changes/add-change-stacking-awareness/specs/cli-change/spec.md +0 -27
- package/OpenSpec-main/openspec/changes/add-change-stacking-awareness/specs/openspec-conventions/spec.md +0 -29
- package/OpenSpec-main/openspec/changes/add-change-stacking-awareness/tasks.md +0 -39
- package/OpenSpec-main/openspec/changes/add-global-install-scope/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/add-global-install-scope/design.md +0 -161
- package/OpenSpec-main/openspec/changes/add-global-install-scope/proposal.md +0 -101
- package/OpenSpec-main/openspec/changes/add-global-install-scope/specs/ai-tool-paths/spec.md +0 -35
- package/OpenSpec-main/openspec/changes/add-global-install-scope/specs/cli-config/spec.md +0 -21
- package/OpenSpec-main/openspec/changes/add-global-install-scope/specs/cli-init/spec.md +0 -28
- package/OpenSpec-main/openspec/changes/add-global-install-scope/specs/cli-update/spec.md +0 -34
- package/OpenSpec-main/openspec/changes/add-global-install-scope/specs/command-generation/spec.md +0 -22
- package/OpenSpec-main/openspec/changes/add-global-install-scope/specs/global-config/spec.md +0 -24
- package/OpenSpec-main/openspec/changes/add-global-install-scope/specs/installation-scope/spec.md +0 -71
- package/OpenSpec-main/openspec/changes/add-global-install-scope/tasks.md +0 -61
- package/OpenSpec-main/openspec/changes/add-qa-smoke-harness/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/add-qa-smoke-harness/proposal.md +0 -45
- package/OpenSpec-main/openspec/changes/add-qa-smoke-harness/specs/developer-qa-workflow/spec.md +0 -49
- package/OpenSpec-main/openspec/changes/add-tool-command-surface-capabilities/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/add-tool-command-surface-capabilities/proposal.md +0 -111
- package/OpenSpec-main/openspec/changes/add-tool-command-surface-capabilities/specs/cli-init/spec.md +0 -121
- package/OpenSpec-main/openspec/changes/add-tool-command-surface-capabilities/specs/cli-update/spec.md +0 -48
- package/OpenSpec-main/openspec/changes/add-tool-command-surface-capabilities/tasks.md +0 -53
- package/OpenSpec-main/openspec/changes/archive/2025-01-11-add-update-command/design.md +0 -86
- package/OpenSpec-main/openspec/changes/archive/2025-01-11-add-update-command/proposal.md +0 -29
- package/OpenSpec-main/openspec/changes/archive/2025-01-11-add-update-command/specs/cli-update/spec.md +0 -59
- package/OpenSpec-main/openspec/changes/archive/2025-01-11-add-update-command/tasks.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-01-13-add-list-command/proposal.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-01-13-add-list-command/specs/cli-list/spec.md +0 -69
- package/OpenSpec-main/openspec/changes/archive/2025-01-13-add-list-command/tasks.md +0 -26
- package/OpenSpec-main/openspec/changes/archive/2025-08-05-initialize-typescript-project/design.md +0 -64
- package/OpenSpec-main/openspec/changes/archive/2025-08-05-initialize-typescript-project/proposal.md +0 -18
- package/OpenSpec-main/openspec/changes/archive/2025-08-05-initialize-typescript-project/tasks.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2025-08-06-add-init-command/design.md +0 -104
- package/OpenSpec-main/openspec/changes/archive/2025-08-06-add-init-command/proposal.md +0 -30
- package/OpenSpec-main/openspec/changes/archive/2025-08-06-add-init-command/specs/cli-init/spec.md +0 -148
- package/OpenSpec-main/openspec/changes/archive/2025-08-06-add-init-command/tasks.md +0 -38
- package/OpenSpec-main/openspec/changes/archive/2025-08-06-adopt-future-state-storage/proposal.md +0 -24
- package/OpenSpec-main/openspec/changes/archive/2025-08-06-adopt-future-state-storage/specs/openspec-conventions/spec.md +0 -120
- package/OpenSpec-main/openspec/changes/archive/2025-08-06-adopt-future-state-storage/tasks.md +0 -38
- package/OpenSpec-main/openspec/changes/archive/2025-08-11-add-complexity-guidelines/proposal.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2025-08-11-add-complexity-guidelines/specs/openspec-docs/README.md +0 -472
- package/OpenSpec-main/openspec/changes/archive/2025-08-11-add-complexity-guidelines/tasks.md +0 -9
- package/OpenSpec-main/openspec/changes/archive/2025-08-13-add-archive-command/proposal.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2025-08-13-add-archive-command/specs/cli-archive/spec.md +0 -111
- package/OpenSpec-main/openspec/changes/archive/2025-08-13-add-archive-command/tasks.md +0 -44
- package/OpenSpec-main/openspec/changes/archive/2025-08-13-add-diff-command/proposal.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-08-13-add-diff-command/specs/cli-diff/spec.md +0 -77
- package/OpenSpec-main/openspec/changes/archive/2025-08-13-add-diff-command/tasks.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-change-commands/design.md +0 -56
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-change-commands/proposal.md +0 -17
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-change-commands/specs/cli-change/spec.md +0 -48
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-change-commands/specs/cli-list/spec.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-change-commands/tasks.md +0 -34
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-interactive-show-command/proposal.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-interactive-show-command/specs/cli-change/spec.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-interactive-show-command/specs/cli-show/spec.md +0 -83
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-interactive-show-command/specs/cli-spec/spec.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-interactive-show-command/tasks.md +0 -142
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-skip-specs-archive-option/proposal.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-skip-specs-archive-option/specs/cli-archive/spec.md +0 -191
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-skip-specs-archive-option/tasks.md +0 -57
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-spec-commands/design.md +0 -45
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-spec-commands/proposal.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-spec-commands/specs/cli-spec/spec.md +0 -43
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-spec-commands/tasks.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-zod-validation/design.md +0 -104
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-zod-validation/proposal.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-zod-validation/specs/cli-archive/spec.md +0 -18
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-zod-validation/specs/cli-diff/spec.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-add-zod-validation/tasks.md +0 -59
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-delta-based-changes/proposal.md +0 -93
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-delta-based-changes/specs/cli-archive/spec.md +0 -48
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-delta-based-changes/specs/cli-diff/spec.md +0 -45
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-delta-based-changes/specs/openspec-conventions/spec.md +0 -101
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-delta-based-changes/tasks.md +0 -55
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-verb-noun-cli-structure/design.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-verb-noun-cli-structure/proposal.md +0 -67
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-verb-noun-cli-structure/specs/cli-list/spec.md +0 -57
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-verb-noun-cli-structure/specs/openspec-conventions/spec.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-adopt-verb-noun-cli-structure/tasks.md +0 -27
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-bulk-validation-interactive-selection/proposal.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-bulk-validation-interactive-selection/specs/cli-change/spec.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-bulk-validation-interactive-selection/specs/cli-spec/spec.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-bulk-validation-interactive-selection/specs/cli-validate/spec.md +0 -149
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-bulk-validation-interactive-selection/tasks.md +0 -81
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-fix-update-tool-selection/proposal.md +0 -40
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-fix-update-tool-selection/specs/cli-update/spec.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-fix-update-tool-selection/tasks.md +0 -21
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-improve-validate-error-messages/proposal.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-improve-validate-error-messages/specs/cli-validate/spec.md +0 -55
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-improve-validate-error-messages/tasks.md +0 -21
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-structured-spec-format/proposal.md +0 -36
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-structured-spec-format/specs/openspec-conventions/spec.md +0 -192
- package/OpenSpec-main/openspec/changes/archive/2025-08-19-structured-spec-format/tasks.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-09-12-add-view-dashboard-command/proposal.md +0 -38
- package/OpenSpec-main/openspec/changes/archive/2025-09-12-add-view-dashboard-command/specs/cli-view/spec.md +0 -109
- package/OpenSpec-main/openspec/changes/archive/2025-09-12-add-view-dashboard-command/tasks.md +0 -47
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-agents-md-config/proposal.md +0 -28
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-agents-md-config/specs/cli-init/spec.md +0 -71
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-agents-md-config/specs/cli-update/spec.md +0 -41
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-agents-md-config/tasks.md +0 -17
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-multi-agent-init/proposal.md +0 -35
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-multi-agent-init/specs/cli-init/spec.md +0 -45
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-multi-agent-init/tasks.md +0 -16
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-slash-command-support/proposal.md +0 -119
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-slash-command-support/specs/cli-init/spec.md +0 -21
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-slash-command-support/specs/cli-update/spec.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-add-slash-command-support/tasks.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-improve-cli-e2e-plan/proposal.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-improve-cli-e2e-plan/tasks.md +0 -9
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-improve-deterministic-tests/proposal.md +0 -78
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-improve-deterministic-tests/tasks.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-improve-init-onboarding/proposal.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-improve-init-onboarding/specs/cli-init/spec.md +0 -92
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-improve-init-onboarding/tasks.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-remove-diff-command/proposal.md +0 -81
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-remove-diff-command/tasks.md +0 -37
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-sort-active-changes-by-progress/proposal.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-sort-active-changes-by-progress/specs/cli-view/spec.md +0 -9
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-sort-active-changes-by-progress/tasks.md +0 -8
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-file-name/proposal.md +0 -29
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-file-name/specs/cli-init/spec.md +0 -40
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-file-name/specs/cli-update/spec.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-file-name/specs/openspec-conventions/spec.md +0 -27
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-file-name/tasks.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-instructions/design.md +0 -130
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-instructions/proposal.md +0 -117
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-agent-instructions/tasks.md +0 -69
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-markdown-parser-crlf/proposal.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-markdown-parser-crlf/specs/cli-validate/spec.md +0 -9
- package/OpenSpec-main/openspec/changes/archive/2025-09-29-update-markdown-parser-crlf/tasks.md +0 -11
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-codex-slash-command-support/proposal.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-codex-slash-command-support/specs/cli-init/spec.md +0 -56
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-codex-slash-command-support/specs/cli-update/spec.md +0 -41
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-codex-slash-command-support/tasks.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-github-copilot-prompts/proposal.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-github-copilot-prompts/specs/cli-init/spec.md +0 -48
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-github-copilot-prompts/specs/cli-update/spec.md +0 -48
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-github-copilot-prompts/tasks.md +0 -30
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-kilocode-workflows/proposal.md +0 -17
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-kilocode-workflows/specs/cli-init/spec.md +0 -43
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-kilocode-workflows/specs/cli-update/spec.md +0 -27
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-kilocode-workflows/tasks.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-non-interactive-init-options/proposal.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-non-interactive-init-options/specs/cli-init/spec.md +0 -39
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-non-interactive-init-options/tasks.md +0 -17
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-windsurf-workflows/proposal.md +0 -17
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-windsurf-workflows/specs/cli-init/spec.md +0 -42
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-windsurf-workflows/specs/cli-update/spec.md +0 -27
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-add-windsurf-workflows/tasks.md +0 -17
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-enhance-validation-error-messages/proposal.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-enhance-validation-error-messages/specs/cli-validate/spec.md +0 -39
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-enhance-validation-error-messages/tasks.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-improve-agent-instruction-usability/proposal.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-improve-agent-instruction-usability/specs/docs-agent-instructions/spec.md +0 -33
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-improve-agent-instruction-usability/tasks.md +0 -11
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-slim-root-agents-file/proposal.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-slim-root-agents-file/tasks.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-cli-init-enter-selection/proposal.md +0 -14
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-cli-init-enter-selection/specs/cli-init/spec.md +0 -10
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-cli-init-enter-selection/tasks.md +0 -8
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-cli-init-root-agents/proposal.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-cli-init-root-agents/specs/cli-init/spec.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-cli-init-root-agents/specs/cli-update/spec.md +0 -10
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-cli-init-root-agents/tasks.md +0 -11
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-release-automation/proposal.md +0 -49
- package/OpenSpec-main/openspec/changes/archive/2025-10-14-update-release-automation/tasks.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-archive-command-arguments/proposal.md +0 -17
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-archive-command-arguments/specs/cli-update/spec.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-archive-command-arguments/tasks.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-cline-support/proposal.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-cline-support/specs/cli-init/spec.md +0 -97
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-cline-support/tasks.md +0 -19
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-crush-support/proposal.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-crush-support/specs/cli-init/spec.md +0 -67
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-crush-support/tasks.md +0 -7
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-factory-slash-commands/proposal.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-factory-slash-commands/specs/cli-init/spec.md +0 -54
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-factory-slash-commands/specs/cli-update/spec.md +0 -54
- package/OpenSpec-main/openspec/changes/archive/2025-10-22-add-factory-slash-commands/tasks.md +0 -11
- package/OpenSpec-main/openspec/changes/archive/2025-11-06-add-shell-completions/design.md +0 -525
- package/OpenSpec-main/openspec/changes/archive/2025-11-06-add-shell-completions/proposal.md +0 -29
- package/OpenSpec-main/openspec/changes/archive/2025-11-06-add-shell-completions/specs/cli-completion/spec.md +0 -300
- package/OpenSpec-main/openspec/changes/archive/2025-11-06-add-shell-completions/tasks.md +0 -81
- package/OpenSpec-main/openspec/changes/archive/2025-12-20-add-global-config-dir/design.md +0 -105
- package/OpenSpec-main/openspec/changes/archive/2025-12-20-add-global-config-dir/proposal.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-12-20-add-global-config-dir/specs/global-config/spec.md +0 -76
- package/OpenSpec-main/openspec/changes/archive/2025-12-20-add-global-config-dir/tasks.md +0 -26
- package/OpenSpec-main/openspec/changes/archive/2025-12-21-add-config-command/design.md +0 -89
- package/OpenSpec-main/openspec/changes/archive/2025-12-21-add-config-command/proposal.md +0 -60
- package/OpenSpec-main/openspec/changes/archive/2025-12-21-add-config-command/specs/cli-config/spec.md +0 -213
- package/OpenSpec-main/openspec/changes/archive/2025-12-21-add-config-command/tasks.md +0 -28
- package/OpenSpec-main/openspec/changes/archive/2025-12-23-extend-shell-completions/proposal.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2025-12-23-extend-shell-completions/specs/cli-completion/spec.md +0 -328
- package/OpenSpec-main/openspec/changes/archive/2025-12-23-extend-shell-completions/tasks.md +0 -49
- package/OpenSpec-main/openspec/changes/archive/2025-12-24-add-artifact-graph-core/design.md +0 -197
- package/OpenSpec-main/openspec/changes/archive/2025-12-24-add-artifact-graph-core/proposal.md +0 -18
- package/OpenSpec-main/openspec/changes/archive/2025-12-24-add-artifact-graph-core/specs/artifact-graph/spec.md +0 -103
- package/OpenSpec-main/openspec/changes/archive/2025-12-24-add-artifact-graph-core/tasks.md +0 -61
- package/OpenSpec-main/openspec/changes/archive/2025-12-25-add-change-manager/design.md +0 -74
- package/OpenSpec-main/openspec/changes/archive/2025-12-25-add-change-manager/proposal.md +0 -45
- package/OpenSpec-main/openspec/changes/archive/2025-12-25-add-change-manager/specs/change-creation/spec.md +0 -63
- package/OpenSpec-main/openspec/changes/archive/2025-12-25-add-change-manager/tasks.md +0 -30
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-artifact-workflow-cli/design.md +0 -112
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-artifact-workflow-cli/proposal.md +0 -33
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-artifact-workflow-cli/specs/cli-artifact-workflow/spec.md +0 -153
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-artifact-workflow-cli/tasks.md +0 -48
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-instruction-loader/design.md +0 -149
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-instruction-loader/proposal.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-instruction-loader/specs/instruction-loader/spec.md +0 -70
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-add-instruction-loader/tasks.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-restructure-schema-directories/design.md +0 -129
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-restructure-schema-directories/proposal.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-restructure-schema-directories/specs/artifact-graph/spec.md +0 -49
- package/OpenSpec-main/openspec/changes/archive/2025-12-28-restructure-schema-directories/tasks.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2025-12-29-unify-change-state-model/design.md +0 -151
- package/OpenSpec-main/openspec/changes/archive/2025-12-29-unify-change-state-model/proposal.md +0 -101
- package/OpenSpec-main/openspec/changes/archive/2025-12-29-unify-change-state-model/specs/cli-artifact-workflow/spec.md +0 -109
- package/OpenSpec-main/openspec/changes/archive/2025-12-29-unify-change-state-model/specs/cli-view/spec.md +0 -60
- package/OpenSpec-main/openspec/changes/archive/2025-12-29-unify-change-state-model/tasks.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-add-antigravity-support/proposal.md +0 -11
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-add-antigravity-support/specs/cli-init/spec.md +0 -105
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-add-antigravity-support/specs/cli-update/spec.md +0 -92
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-add-antigravity-support/tasks.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-fix-cline-workflows-implementation/proposal.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-fix-cline-workflows-implementation/specs/cli-init/spec.md +0 -105
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-fix-cline-workflows-implementation/specs/cli-update/spec.md +0 -92
- package/OpenSpec-main/openspec/changes/archive/2025-12-30-fix-cline-workflows-implementation/tasks.md +0 -13
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-agent-schema-selection/proposal.md +0 -26
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-agent-schema-selection/tasks.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-per-change-schema-metadata/design.md +0 -147
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-per-change-schema-metadata/proposal.md +0 -29
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-per-change-schema-metadata/specs/cli-artifact-workflow/spec.md +0 -98
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-per-change-schema-metadata/tasks.md +0 -29
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-specs-apply-command/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-specs-apply-command/design.md +0 -77
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-specs-apply-command/proposal.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-specs-apply-command/specs/specs-sync-skill/spec.md +0 -67
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-add-specs-apply-command/tasks.md +0 -40
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-make-apply-instructions-schema-aware/proposal.md +0 -138
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-make-apply-instructions-schema-aware/specs/cli-artifact-workflow/spec.md +0 -60
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-make-apply-instructions-schema-aware/tasks.md +0 -35
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-opsx-archive-command/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-opsx-archive-command/design.md +0 -84
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-opsx-archive-command/proposal.md +0 -28
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-opsx-archive-command/specs/opsx-archive-skill/spec.md +0 -122
- package/OpenSpec-main/openspec/changes/archive/2026-01-06-opsx-archive-command/tasks.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2026-01-07-add-nix-flake-support/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-01-07-add-nix-flake-support/design.md +0 -94
- package/OpenSpec-main/openspec/changes/archive/2026-01-07-add-nix-flake-support/proposal.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2026-01-07-add-nix-flake-support/specs/nix-flake-support/spec.md +0 -79
- package/OpenSpec-main/openspec/changes/archive/2026-01-07-add-nix-flake-support/tasks.md +0 -65
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-flake-update-script/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-flake-update-script/design.md +0 -117
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-flake-update-script/proposal.md +0 -23
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-flake-update-script/specs/flake-update-script/spec.md +0 -93
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-flake-update-script/tasks.md +0 -55
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-posthog-analytics/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-posthog-analytics/design.md +0 -175
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-posthog-analytics/proposal.md +0 -37
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-posthog-analytics/specs/global-config/spec.md +0 -21
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-posthog-analytics/specs/telemetry/spec.md +0 -116
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-add-posthog-analytics/tasks.md +0 -47
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-fix-codebuddy-frontmatter-fields/proposal.md +0 -16
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-fix-codebuddy-frontmatter-fields/specs/cli-init/spec.md +0 -75
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-fix-codebuddy-frontmatter-fields/specs/cli-update/spec.md +0 -56
- package/OpenSpec-main/openspec/changes/archive/2026-01-09-fix-codebuddy-frontmatter-fields/tasks.md +0 -6
- package/OpenSpec-main/openspec/changes/archive/2026-01-15-add-nix-ci-validation/design.md +0 -206
- package/OpenSpec-main/openspec/changes/archive/2026-01-15-add-nix-ci-validation/proposal.md +0 -21
- package/OpenSpec-main/openspec/changes/archive/2026-01-15-add-nix-ci-validation/specs/ci-nix-validation/spec.md +0 -104
- package/OpenSpec-main/openspec/changes/archive/2026-01-15-add-nix-ci-validation/tasks.md +0 -49
- package/OpenSpec-main/openspec/changes/archive/2026-01-30-opencode-command-references/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-01-30-opencode-command-references/README.md +0 -3
- package/OpenSpec-main/openspec/changes/archive/2026-01-30-opencode-command-references/design.md +0 -70
- package/OpenSpec-main/openspec/changes/archive/2026-01-30-opencode-command-references/proposal.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2026-01-30-opencode-command-references/specs/no-changes.md +0 -9
- package/OpenSpec-main/openspec/changes/archive/2026-01-30-opencode-command-references/tasks.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-feedback-command/proposal.md +0 -20
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-feedback-command/specs/cli-feedback/spec.md +0 -188
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-feedback-command/tasks.md +0 -30
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-opsx-onboard-skill/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-opsx-onboard-skill/design.md +0 -115
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-opsx-onboard-skill/proposal.md +0 -27
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-opsx-onboard-skill/specs/opsx-onboard-skill/spec.md +0 -162
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-opsx-onboard-skill/tasks.md +0 -21
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-verify-skill/design.md +0 -96
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-verify-skill/proposal.md +0 -48
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-verify-skill/specs/opsx-verify-skill/spec.md +0 -190
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-add-verify-skill/tasks.md +0 -15
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-merge-init-experimental/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-merge-init-experimental/design.md +0 -193
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-merge-init-experimental/proposal.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-merge-init-experimental/specs/cli-init/spec.md +0 -176
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-merge-init-experimental/specs/legacy-cleanup/spec.md +0 -158
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-merge-init-experimental/tasks.md +0 -67
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-multi-provider-skill-generation/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-multi-provider-skill-generation/design.md +0 -144
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-multi-provider-skill-generation/proposal.md +0 -36
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-multi-provider-skill-generation/specs/ai-tool-paths/spec.md +0 -63
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-multi-provider-skill-generation/specs/cli-artifact-workflow/spec.md +0 -60
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-multi-provider-skill-generation/specs/command-generation/spec.md +0 -98
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-multi-provider-skill-generation/tasks.md +0 -55
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/design.md +0 -665
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/proposal.md +0 -774
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/specs/config-loading/spec.md +0 -119
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/specs/context-injection/spec.md +0 -51
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/specs/rules-injection/spec.md +0 -99
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/specs/schema-resolution/spec.md +0 -83
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-config/tasks.md +0 -72
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-local-schemas/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-local-schemas/design.md +0 -117
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-local-schemas/proposal.md +0 -167
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-local-schemas/specs/schema-resolution/spec.md +0 -88
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-project-local-schemas/tasks.md +0 -28
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/design.md +0 -113
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/proposal.md +0 -55
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/specs/schema-fork-command/spec.md +0 -66
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/specs/schema-init-command/spec.md +0 -71
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/specs/schema-validate-command/spec.md +0 -86
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/specs/schema-which-command/spec.md +0 -65
- package/OpenSpec-main/openspec/changes/archive/2026-02-17-schema-management-cli/tasks.md +0 -67
- package/OpenSpec-main/openspec/changes/archive/2026-04-23-add-kimi-cli-skills-only-support/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/archive/2026-04-23-add-kimi-cli-skills-only-support/README.md +0 -3
- package/OpenSpec-main/openspec/changes/archive/2026-04-23-add-kimi-cli-skills-only-support/design.md +0 -85
- package/OpenSpec-main/openspec/changes/archive/2026-04-23-add-kimi-cli-skills-only-support/proposal.md +0 -38
- package/OpenSpec-main/openspec/changes/archive/2026-04-23-add-kimi-cli-skills-only-support/specs/ai-tool-paths/spec.md +0 -12
- package/OpenSpec-main/openspec/changes/archive/2026-04-23-add-kimi-cli-skills-only-support/specs/cli-init/spec.md +0 -37
- package/OpenSpec-main/openspec/changes/archive/2026-04-23-add-kimi-cli-skills-only-support/tasks.md +0 -22
- package/OpenSpec-main/openspec/changes/archive/2026-05-04-workspace-foundation/design.md +0 -208
- package/OpenSpec-main/openspec/changes/archive/2026-05-04-workspace-foundation/proposal.md +0 -142
- package/OpenSpec-main/openspec/changes/archive/2026-05-04-workspace-foundation/specs/openspec-conventions/spec.md +0 -29
- package/OpenSpec-main/openspec/changes/archive/2026-05-04-workspace-foundation/specs/workspace-foundation/spec.md +0 -199
- package/OpenSpec-main/openspec/changes/archive/2026-05-04-workspace-foundation/tasks.md +0 -56
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-create-and-register-repos/design.md +0 -356
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-create-and-register-repos/proposal.md +0 -128
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-create-and-register-repos/specs/cli-artifact-workflow/spec.md +0 -24
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-create-and-register-repos/specs/workspace-foundation/spec.md +0 -35
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-create-and-register-repos/specs/workspace-links/spec.md +0 -356
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-create-and-register-repos/tasks.md +0 -121
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-open-agent-context/design.md +0 -266
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-open-agent-context/proposal.md +0 -65
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-open-agent-context/specs/workspace-foundation/spec.md +0 -76
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-open-agent-context/specs/workspace-open/spec.md +0 -199
- package/OpenSpec-main/openspec/changes/archive/2026-05-06-workspace-open-agent-context/tasks.md +0 -89
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/design.md +0 -242
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/proposal.md +0 -78
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/artifact-graph/spec.md +0 -36
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/change-creation/spec.md +0 -42
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/cli-artifact-workflow/spec.md +0 -100
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/cli-config/spec.md +0 -55
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/cli-update/spec.md +0 -21
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/openspec-conventions/spec.md +0 -32
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/schema-resolution/spec.md +0 -25
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/workspace-change-planning/spec.md +0 -67
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/specs/workspace-links/spec.md +0 -163
- package/OpenSpec-main/openspec/changes/archive/2026-05-14-workspace-change-planning/tasks.md +0 -133
- package/OpenSpec-main/openspec/changes/fix-opencode-commands-directory/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/fix-opencode-commands-directory/design.md +0 -48
- package/OpenSpec-main/openspec/changes/fix-opencode-commands-directory/proposal.md +0 -26
- package/OpenSpec-main/openspec/changes/fix-opencode-commands-directory/specs/command-generation/spec.md +0 -63
- package/OpenSpec-main/openspec/changes/fix-opencode-commands-directory/tasks.md +0 -19
- package/OpenSpec-main/openspec/changes/graceful-status-no-changes/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/graceful-status-no-changes/design.md +0 -38
- package/OpenSpec-main/openspec/changes/graceful-status-no-changes/proposal.md +0 -25
- package/OpenSpec-main/openspec/changes/graceful-status-no-changes/specs/graceful-status-empty/spec.md +0 -27
- package/OpenSpec-main/openspec/changes/graceful-status-no-changes/tasks.md +0 -16
- package/OpenSpec-main/openspec/changes/schema-alias-support/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/schema-alias-support/proposal.md +0 -28
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/design.md +0 -288
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/proposal.md +0 -202
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/specs/cli-init/spec.md +0 -199
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/specs/cli-update/spec.md +0 -177
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/specs/profiles/spec.md +0 -142
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/specs/propose-workflow/spec.md +0 -42
- package/OpenSpec-main/openspec/changes/simplify-skill-installation/tasks.md +0 -132
- package/OpenSpec-main/openspec/changes/unify-template-generation-pipeline/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/unify-template-generation-pipeline/design.md +0 -149
- package/OpenSpec-main/openspec/changes/unify-template-generation-pipeline/proposal.md +0 -47
- package/OpenSpec-main/openspec/changes/unify-template-generation-pipeline/specs/template-artifact-pipeline/spec.md +0 -89
- package/OpenSpec-main/openspec/changes/unify-template-generation-pipeline/tasks.md +0 -41
- package/OpenSpec-main/openspec/changes/workspace-agent-guidance/.openspec.yaml +0 -2
- package/OpenSpec-main/openspec/changes/workspace-agent-guidance/proposal.md +0 -100
- package/OpenSpec-main/openspec/changes/workspace-apply-repo-slice/proposal.md +0 -58
- package/OpenSpec-main/openspec/changes/workspace-reimplementation-roadmap/HISTORICAL_DIRECTION.md +0 -511
- package/OpenSpec-main/openspec/changes/workspace-reimplementation-roadmap/POC_REFERENCE_GUIDE.md +0 -266
- package/OpenSpec-main/openspec/changes/workspace-reimplementation-roadmap/README.md +0 -107
- package/OpenSpec-main/openspec/changes/workspace-reimplementation-roadmap/START_HERE.md +0 -105
- package/OpenSpec-main/openspec/changes/workspace-reimplementation-roadmap/proposal.md +0 -62
- package/OpenSpec-main/openspec/changes/workspace-verify-and-archive/proposal.md +0 -57
- package/OpenSpec-main/openspec/config.yaml +0 -36
- package/OpenSpec-main/openspec/explorations/explore-workflow-ux.md +0 -116
- package/OpenSpec-main/openspec/explorations/workspace-architecture.md +0 -857
- package/OpenSpec-main/openspec/explorations/workspace-roadmap.md +0 -367
- package/OpenSpec-main/openspec/explorations/workspace-user-journeys.md +0 -2259
- package/OpenSpec-main/openspec/explorations/workspace-ux-simplification.md +0 -491
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/.initiative.yaml +0 -27
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/README.md +0 -33
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/decisions.md +0 -204
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/direction.md +0 -447
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/questions.md +0 -23
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/roadmap.md +0 -759
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/tasks.md +0 -308
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/01-lock-the-direction/evidence.md +0 -154
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/01-lock-the-direction/plan.md +0 -90
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/01-lock-the-direction/tasks.md +0 -44
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/02-stabilize-workspace-as-local-view/evidence.md +0 -68
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/02-stabilize-workspace-as-local-view/plan.md +0 -80
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/02-stabilize-workspace-as-local-view/tasks.md +0 -23
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/03-add-context-store-foundation/evidence.md +0 -43
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/03-add-context-store-foundation/plan.md +0 -85
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/03-add-context-store-foundation/tasks.md +0 -17
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/04-add-collection-foundation/evidence.md +0 -77
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/04-add-collection-foundation/plan.md +0 -198
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/04-add-collection-foundation/tasks.md +0 -14
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/05-ship-initiative-mvp/evidence.md +0 -99
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/05-ship-initiative-mvp/plan.md +0 -236
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/05-ship-initiative-mvp/tasks.md +0 -21
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/06-add-minimal-context-store-ux/evidence.md +0 -97
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/06-add-minimal-context-store-ux/plan.md +0 -333
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/06-add-minimal-context-store-ux/tasks.md +0 -29
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/07-add-agent-first-initiative-discovery/evidence.md +0 -97
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/07-add-agent-first-initiative-discovery/plan.md +0 -184
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/07-add-agent-first-initiative-discovery/tasks.md +0 -27
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/08-connect-repo-local-changes-to-initiatives/evidence.md +0 -239
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/08-connect-repo-local-changes-to-initiatives/plan.md +0 -279
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/08-connect-repo-local-changes-to-initiatives/tasks.md +0 -22
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/09-add-initiative-resolve/decision-review.md +0 -64
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/09-add-initiative-resolve/evidence.md +0 -106
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/09-add-initiative-resolve/plan.md +0 -141
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/09-add-initiative-resolve/tasks.md +0 -22
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/10-let-workspaces-open-initiatives/plan.md +0 -430
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/10-let-workspaces-open-initiatives/tasks.md +0 -43
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/11-manual-beta-reality-pass/notes.md +0 -289
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/11-manual-beta-reality-pass/plan.md +0 -39
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/11-manual-beta-reality-pass/tasks.md +0 -8
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/12-context-store-first-run-and-cleanup-ux/evidence.md +0 -45
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/12-context-store-first-run-and-cleanup-ux/plan.md +0 -150
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/12-context-store-first-run-and-cleanup-ux/tasks.md +0 -23
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/13-agent-handoff-output-and-delivery-polish/evidence.md +0 -25
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/13-agent-handoff-output-and-delivery-polish/plan.md +0 -98
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/13-agent-handoff-output-and-delivery-polish/tasks.md +0 -25
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/14-workspaces-beta-guide-split/plan.md +0 -37
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/14-workspaces-beta-guide-split/tasks.md +0 -9
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/15-context-store-project-roots-and-schema-led-initiatives/evidence.md +0 -140
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/15-context-store-project-roots-and-schema-led-initiatives/plan.md +0 -344
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/15-context-store-project-roots-and-schema-led-initiatives/tasks.md +0 -39
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/16-add-escalation-ux/plan.md +0 -26
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/16-add-escalation-ux/tasks.md +0 -7
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/17-harden-team-shared-coordination/plan.md +0 -25
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/17-harden-team-shared-coordination/tasks.md +0 -7
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/18-explore-initiative-hosted-target-bound-change-artifacts/evidence.md +0 -397
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/18-explore-initiative-hosted-target-bound-change-artifacts/plan.md +0 -180
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/18-explore-initiative-hosted-target-bound-change-artifacts/tasks.md +0 -28
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/19-review-workspace-beta-compatibility-before-public-release/plan.md +0 -62
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/19-review-workspace-beta-compatibility-before-public-release/tasks.md +0 -16
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/proposed-initiative-next-agent-handoff-ux/evidence.md +0 -47
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/proposed-initiative-next-agent-handoff-ux/plan.md +0 -90
- package/OpenSpec-main/openspec/initiatives/context-store-and-initiatives/work-items/proposed-initiative-next-agent-handoff-ux/tasks.md +0 -18
- package/OpenSpec-main/openspec/specs/ai-tool-paths/spec.md +0 -63
- package/OpenSpec-main/openspec/specs/artifact-graph/spec.md +0 -165
- package/OpenSpec-main/openspec/specs/change-creation/spec.md +0 -108
- package/OpenSpec-main/openspec/specs/ci-nix-validation/spec.md +0 -107
- package/OpenSpec-main/openspec/specs/cli-archive/spec.md +0 -210
- package/OpenSpec-main/openspec/specs/cli-artifact-workflow/spec.md +0 -398
- package/OpenSpec-main/openspec/specs/cli-change/spec.md +0 -92
- package/OpenSpec-main/openspec/specs/cli-completion/spec.md +0 -432
- package/OpenSpec-main/openspec/specs/cli-config/spec.md +0 -318
- package/OpenSpec-main/openspec/specs/cli-feedback/spec.md +0 -193
- package/OpenSpec-main/openspec/specs/cli-init/spec.md +0 -269
- package/OpenSpec-main/openspec/specs/cli-list/spec.md +0 -103
- package/OpenSpec-main/openspec/specs/cli-show/spec.md +0 -86
- package/OpenSpec-main/openspec/specs/cli-spec/spec.md +0 -88
- package/OpenSpec-main/openspec/specs/cli-update/spec.md +0 -229
- package/OpenSpec-main/openspec/specs/cli-validate/spec.md +0 -219
- package/OpenSpec-main/openspec/specs/cli-view/spec.md +0 -129
- package/OpenSpec-main/openspec/specs/command-generation/spec.md +0 -97
- package/OpenSpec-main/openspec/specs/config-loading/spec.md +0 -122
- package/OpenSpec-main/openspec/specs/context-injection/spec.md +0 -53
- package/OpenSpec-main/openspec/specs/docs-agent-instructions/spec.md +0 -62
- package/OpenSpec-main/openspec/specs/global-config/spec.md +0 -101
- package/OpenSpec-main/openspec/specs/instruction-loader/spec.md +0 -70
- package/OpenSpec-main/openspec/specs/legacy-cleanup/spec.md +0 -163
- package/OpenSpec-main/openspec/specs/openspec-conventions/spec.md +0 -556
- package/OpenSpec-main/openspec/specs/opsx-archive-skill/spec.md +0 -128
- package/OpenSpec-main/openspec/specs/opsx-onboard-skill/spec.md +0 -167
- package/OpenSpec-main/openspec/specs/opsx-verify-skill/spec.md +0 -189
- package/OpenSpec-main/openspec/specs/rules-injection/spec.md +0 -102
- package/OpenSpec-main/openspec/specs/schema-fork-command/spec.md +0 -71
- package/OpenSpec-main/openspec/specs/schema-init-command/spec.md +0 -76
- package/OpenSpec-main/openspec/specs/schema-resolution/spec.md +0 -201
- package/OpenSpec-main/openspec/specs/schema-validate-command/spec.md +0 -91
- package/OpenSpec-main/openspec/specs/schema-which-command/spec.md +0 -70
- package/OpenSpec-main/openspec/specs/specs-sync-skill/spec.md +0 -72
- package/OpenSpec-main/openspec/specs/telemetry/spec.md +0 -122
- package/OpenSpec-main/openspec/specs/workspace-change-planning/spec.md +0 -71
- package/OpenSpec-main/openspec/specs/workspace-foundation/spec.md +0 -279
- package/OpenSpec-main/openspec/specs/workspace-links/spec.md +0 -529
- package/OpenSpec-main/openspec/specs/workspace-open/spec.md +0 -205
- package/OpenSpec-main/openspec-parallel-merge-plan.md +0 -98
- package/OpenSpec-main/package-lock.json +0 -4978
- package/OpenSpec-main/package.json +0 -84
- package/OpenSpec-main/pnpm-lock.yaml +0 -3187
- package/OpenSpec-main/schemas/spec-driven/schema.yaml +0 -153
- package/OpenSpec-main/schemas/spec-driven/templates/design.md +0 -19
- package/OpenSpec-main/schemas/spec-driven/templates/proposal.md +0 -23
- package/OpenSpec-main/schemas/spec-driven/templates/spec.md +0 -8
- package/OpenSpec-main/schemas/spec-driven/templates/tasks.md +0 -9
- package/OpenSpec-main/schemas/workspace-planning/schema.yaml +0 -72
- package/OpenSpec-main/schemas/workspace-planning/templates/design.md +0 -33
- package/OpenSpec-main/schemas/workspace-planning/templates/proposal.md +0 -28
- package/OpenSpec-main/schemas/workspace-planning/templates/spec.md +0 -9
- package/OpenSpec-main/schemas/workspace-planning/templates/tasks.md +0 -15
- package/OpenSpec-main/scripts/README.md +0 -37
- package/OpenSpec-main/scripts/pack-version-check.mjs +0 -111
- package/OpenSpec-main/scripts/postinstall.js +0 -83
- package/OpenSpec-main/scripts/test-postinstall.sh +0 -57
- package/OpenSpec-main/scripts/update-flake.sh +0 -128
- package/OpenSpec-main/test/cli-e2e/basic.test.ts +0 -205
- package/OpenSpec-main/test/commands/artifact-workflow.test.ts +0 -1063
- package/OpenSpec-main/test/commands/change-initiative-link.test.ts +0 -532
- package/OpenSpec-main/test/commands/change.interactive-show.test.ts +0 -45
- package/OpenSpec-main/test/commands/change.interactive-validate.test.ts +0 -48
- package/OpenSpec-main/test/commands/completion.test.ts +0 -278
- package/OpenSpec-main/test/commands/config-profile.test.ts +0 -532
- package/OpenSpec-main/test/commands/config.test.ts +0 -285
- package/OpenSpec-main/test/commands/context-store.test.ts +0 -692
- package/OpenSpec-main/test/commands/feedback.test.ts +0 -429
- package/OpenSpec-main/test/commands/initiative.test.ts +0 -907
- package/OpenSpec-main/test/commands/schema.test.ts +0 -467
- package/OpenSpec-main/test/commands/show.test.ts +0 -123
- package/OpenSpec-main/test/commands/spec.interactive-show.test.ts +0 -44
- package/OpenSpec-main/test/commands/spec.interactive-validate.test.ts +0 -44
- package/OpenSpec-main/test/commands/spec.test.ts +0 -324
- package/OpenSpec-main/test/commands/validate.enriched-output.test.ts +0 -49
- package/OpenSpec-main/test/commands/validate.test.ts +0 -147
- package/OpenSpec-main/test/commands/workspace-initiative-open.test.ts +0 -638
- package/OpenSpec-main/test/commands/workspace-open.test.ts +0 -123
- package/OpenSpec-main/test/commands/workspace.interactive.test.ts +0 -696
- package/OpenSpec-main/test/commands/workspace.test.ts +0 -1812
- package/OpenSpec-main/test/core/archive.test.ts +0 -869
- package/OpenSpec-main/test/core/artifact-graph/graph.test.ts +0 -268
- package/OpenSpec-main/test/core/artifact-graph/instruction-loader.test.ts +0 -609
- package/OpenSpec-main/test/core/artifact-graph/outputs.test.ts +0 -175
- package/OpenSpec-main/test/core/artifact-graph/resolver.test.ts +0 -651
- package/OpenSpec-main/test/core/artifact-graph/schema.test.ts +0 -207
- package/OpenSpec-main/test/core/artifact-graph/state.test.ts +0 -174
- package/OpenSpec-main/test/core/artifact-graph/workflow.integration.test.ts +0 -182
- package/OpenSpec-main/test/core/available-tools.test.ts +0 -167
- package/OpenSpec-main/test/core/collections/initiatives/operations.test.ts +0 -342
- package/OpenSpec-main/test/core/collections/initiatives/resolution.test.ts +0 -21
- package/OpenSpec-main/test/core/collections/initiatives/schema.test.ts +0 -201
- package/OpenSpec-main/test/core/collections/initiatives/templates.test.ts +0 -74
- package/OpenSpec-main/test/core/collections/runtime.test.ts +0 -214
- package/OpenSpec-main/test/core/command-generation/adapters.test.ts +0 -710
- package/OpenSpec-main/test/core/command-generation/generator.test.ts +0 -110
- package/OpenSpec-main/test/core/command-generation/registry.test.ts +0 -108
- package/OpenSpec-main/test/core/command-generation/types.test.ts +0 -79
- package/OpenSpec-main/test/core/commands/change-command.list.test.ts +0 -76
- package/OpenSpec-main/test/core/commands/change-command.show-validate.test.ts +0 -111
- package/OpenSpec-main/test/core/completions/command-registry.test.ts +0 -201
- package/OpenSpec-main/test/core/completions/completion-provider.test.ts +0 -288
- package/OpenSpec-main/test/core/completions/generators/bash-generator.test.ts +0 -586
- package/OpenSpec-main/test/core/completions/generators/fish-generator.test.ts +0 -549
- package/OpenSpec-main/test/core/completions/generators/powershell-generator.test.ts +0 -621
- package/OpenSpec-main/test/core/completions/generators/zsh-generator.test.ts +0 -425
- package/OpenSpec-main/test/core/completions/installers/bash-installer.test.ts +0 -484
- package/OpenSpec-main/test/core/completions/installers/fish-installer.test.ts +0 -321
- package/OpenSpec-main/test/core/completions/installers/powershell-installer.test.ts +0 -824
- package/OpenSpec-main/test/core/completions/installers/zsh-installer.test.ts +0 -750
- package/OpenSpec-main/test/core/config-schema.test.ts +0 -340
- package/OpenSpec-main/test/core/context-store/foundation.test.ts +0 -364
- package/OpenSpec-main/test/core/context-store/registry.test.ts +0 -599
- package/OpenSpec-main/test/core/converters/json-converter.test.ts +0 -184
- package/OpenSpec-main/test/core/global-config.test.ts +0 -371
- package/OpenSpec-main/test/core/init.test.ts +0 -786
- package/OpenSpec-main/test/core/legacy-cleanup.test.ts +0 -1162
- package/OpenSpec-main/test/core/list.test.ts +0 -165
- package/OpenSpec-main/test/core/migration.test.ts +0 -150
- package/OpenSpec-main/test/core/parsers/change-parser.test.ts +0 -52
- package/OpenSpec-main/test/core/parsers/markdown-parser.test.ts +0 -355
- package/OpenSpec-main/test/core/parsers/requirement-blocks.test.ts +0 -46
- package/OpenSpec-main/test/core/planning-home.test.ts +0 -120
- package/OpenSpec-main/test/core/profile-sync-drift.test.ts +0 -92
- package/OpenSpec-main/test/core/profiles.test.ts +0 -63
- package/OpenSpec-main/test/core/project-config.test.ts +0 -610
- package/OpenSpec-main/test/core/shared/skill-generation.test.ts +0 -301
- package/OpenSpec-main/test/core/shared/tool-detection.test.ts +0 -333
- package/OpenSpec-main/test/core/templates/skill-templates-parity.test.ts +0 -172
- package/OpenSpec-main/test/core/update.test.ts +0 -1810
- package/OpenSpec-main/test/core/validation.enriched-messages.test.ts +0 -74
- package/OpenSpec-main/test/core/validation.test.ts +0 -680
- package/OpenSpec-main/test/core/view.test.ts +0 -129
- package/OpenSpec-main/test/core/workspace/foundation.test.ts +0 -694
- package/OpenSpec-main/test/core/workspace/legacy-state.test.ts +0 -221
- package/OpenSpec-main/test/core/workspace/skills.test.ts +0 -69
- package/OpenSpec-main/test/fixtures/tmp-init/openspec/changes/c1/proposal.md +0 -7
- package/OpenSpec-main/test/fixtures/tmp-init/openspec/changes/c1/specs/alpha/spec.md +0 -8
- package/OpenSpec-main/test/fixtures/tmp-init/openspec/specs/alpha/spec.md +0 -12
- package/OpenSpec-main/test/helpers/path-env.ts +0 -26
- package/OpenSpec-main/test/helpers/run-cli.ts +0 -150
- package/OpenSpec-main/test/prompts/searchable-multi-select.test.ts +0 -220
- package/OpenSpec-main/test/specs/source-specs-normalization.test.ts +0 -63
- package/OpenSpec-main/test/telemetry/config.test.ts +0 -298
- package/OpenSpec-main/test/telemetry/index.test.ts +0 -219
- package/OpenSpec-main/test/utils/change-metadata.test.ts +0 -368
- package/OpenSpec-main/test/utils/change-utils.test.ts +0 -201
- package/OpenSpec-main/test/utils/command-references.test.ts +0 -83
- package/OpenSpec-main/test/utils/file-system.test.ts +0 -322
- package/OpenSpec-main/test/utils/interactive.test.ts +0 -125
- package/OpenSpec-main/test/utils/marker-updates.test.ts +0 -448
- package/OpenSpec-main/test/utils/shell-detection.test.ts +0 -185
- package/OpenSpec-main/vitest.config.ts +0 -47
- package/OpenSpec-main/vitest.setup.ts +0 -15
- package/Scanner CLI Inteligente para Projetos.md +0 -433
|
@@ -1,857 +0,0 @@
|
|
|
1
|
-
# Workspace Exploration
|
|
2
|
-
|
|
3
|
-
## Context
|
|
4
|
-
|
|
5
|
-
While simplifying skill installation, we identified deeper questions about how profiles, config, and workspaces should work together. This doc captures what we've decided, what's open, and what needs research.
|
|
6
|
-
|
|
7
|
-
**Update:** Initial exploration revealed that "workspaces" isn't primarily about config layering—it's about a more fundamental question: **where do specs and changes live when work spans multiple modules or repositories?**
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Part 1: Profile & Config (Original Scope)
|
|
12
|
-
|
|
13
|
-
### What We've Decided
|
|
14
|
-
|
|
15
|
-
#### Profile UX (Simplified)
|
|
16
|
-
|
|
17
|
-
**Before (original proposal):**
|
|
18
|
-
```
|
|
19
|
-
openspec profile set core|extended
|
|
20
|
-
openspec profile install <workflow>
|
|
21
|
-
openspec profile uninstall <workflow>
|
|
22
|
-
openspec profile list
|
|
23
|
-
openspec profile show
|
|
24
|
-
openspec config set delivery skills|commands|both
|
|
25
|
-
openspec config get delivery
|
|
26
|
-
openspec config list
|
|
27
|
-
```
|
|
28
|
-
8 subcommands, two concepts (profile + config)
|
|
29
|
-
|
|
30
|
-
**After (simplified):**
|
|
31
|
-
```
|
|
32
|
-
openspec config profile # interactive picker (delivery + workflows)
|
|
33
|
-
openspec config profile core # preset shortcut
|
|
34
|
-
openspec config profile extended # preset shortcut
|
|
35
|
-
```
|
|
36
|
-
1 command with presets, one concept
|
|
37
|
-
|
|
38
|
-
#### Interactive Picker
|
|
39
|
-
|
|
40
|
-
```
|
|
41
|
-
$ openspec config profile
|
|
42
|
-
|
|
43
|
-
Delivery: [skills] [commands] [both]
|
|
44
|
-
^^^^^^
|
|
45
|
-
|
|
46
|
-
Workflows: (space to toggle, enter to save)
|
|
47
|
-
[x] propose
|
|
48
|
-
[x] explore
|
|
49
|
-
[x] apply
|
|
50
|
-
[x] archive
|
|
51
|
-
[ ] new
|
|
52
|
-
[ ] ff
|
|
53
|
-
[ ] continue
|
|
54
|
-
[ ] verify
|
|
55
|
-
[ ] sync
|
|
56
|
-
[ ] bulk-archive
|
|
57
|
-
[ ] onboard
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
One place to configure both delivery method and workflow selection.
|
|
61
|
-
|
|
62
|
-
#### Why "Profile" (Not "Workflows")
|
|
63
|
-
|
|
64
|
-
Profiles as an abstraction allow for future extensibility:
|
|
65
|
-
- Methodology bundles (spec-driven, test-driven)
|
|
66
|
-
- User-created profiles
|
|
67
|
-
- Shareable profiles
|
|
68
|
-
- Different skill/command sets for different approaches
|
|
69
|
-
|
|
70
|
-
### Config Layering Research
|
|
71
|
-
|
|
72
|
-
We researched how similar tools handle config layering:
|
|
73
|
-
|
|
74
|
-
| Tool | Model | Key Pattern |
|
|
75
|
-
|------|-------|-------------|
|
|
76
|
-
| **VSCode** | User → Workspace → Folder | Objects merge, primitives override. Workspace = committed `.vscode/` in repo |
|
|
77
|
-
| **ESLint (flat)** | Single root config | *Deliberately killed cascading* - "complexity exploded exponentially" |
|
|
78
|
-
| **Turborepo** | Root + package extends | Per-package `turbo.json` with `extends: ["//"]` for overrides |
|
|
79
|
-
| **Nx** | Integrated vs Package-based | Two modes - shared root OR per-package. Hard to migrate from integrated. |
|
|
80
|
-
| **pnpm** | Workspace file defines package scope | `pnpm-workspace.yaml` at the package-set root. Dependencies can be shared or per-package |
|
|
81
|
-
| **Claude Code** | Global + Project | `~/.claude/` for global, `.claude/` per-project. No workspace tracking. |
|
|
82
|
-
| **Kiro** | Distributed per-root | Each folder has `.kiro/`. Aggregated display, no inheritance. |
|
|
83
|
-
|
|
84
|
-
**Key insight from ESLint:** The ESLint team explicitly removed cascading in flat config because cascading was a complexity nightmare. Their new model: one config at root, use glob patterns to target subdirectories.
|
|
85
|
-
|
|
86
|
-
**Recommendation for profiles/config:** Two layers is enough.
|
|
87
|
-
- **Global** = user's defaults (`~/.config/openspec/`)
|
|
88
|
-
- **Project** = repo-level config (`.openspec/` or committed to repo)
|
|
89
|
-
|
|
90
|
-
No "workspace" layer needed for config. This matches Claude Code's model.
|
|
91
|
-
|
|
92
|
-
### Config Decision (For This Change)
|
|
93
|
-
|
|
94
|
-
Keep it simple:
|
|
95
|
-
1. Global profile as default for `openspec init`
|
|
96
|
-
2. `openspec init` applies current profile to project
|
|
97
|
-
3. No workspace tracking (yet)
|
|
98
|
-
4. No auto-sync of existing projects
|
|
99
|
-
|
|
100
|
-
This is explicit and doesn't prevent future features.
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## Part 2: The Deeper Problem (Spec & Change Organization)
|
|
105
|
-
|
|
106
|
-
### The Real Question
|
|
107
|
-
|
|
108
|
-
The workspace question isn't about config—it's about **where specs and changes live** when:
|
|
109
|
-
|
|
110
|
-
1. **Monorepos**: A spec or change might span multiple packages/apps
|
|
111
|
-
2. **Multi-repo**: A change might span multiple repositories entirely
|
|
112
|
-
3. **Cross-functional work**: A feature affects multiple teams (backend, web, iOS, Android)
|
|
113
|
-
|
|
114
|
-
### Current OpenSpec Architecture
|
|
115
|
-
|
|
116
|
-
OpenSpec currently assumes:
|
|
117
|
-
- One `openspec/` per repo, always at root
|
|
118
|
-
- CLI doesn't walk up directories—expects you're at root
|
|
119
|
-
- Changes can touch ANY spec (no scoping)
|
|
120
|
-
- Single config applies to everything
|
|
121
|
-
- No notion of "scope" or "boundary" within a project
|
|
122
|
-
|
|
123
|
-
```
|
|
124
|
-
openspec/
|
|
125
|
-
├── specs/
|
|
126
|
-
│ ├── auth/spec.md # Domain-organized specs
|
|
127
|
-
│ ├── payments/spec.md
|
|
128
|
-
│ └── checkout/spec.md
|
|
129
|
-
├── changes/
|
|
130
|
-
│ └── add-oauth/
|
|
131
|
-
│ ├── proposal.md
|
|
132
|
-
│ ├── design.md
|
|
133
|
-
│ ├── tasks.md
|
|
134
|
-
│ └── specs/ # Delta specs (can touch multiple)
|
|
135
|
-
│ ├── auth/spec.md
|
|
136
|
-
│ └── checkout/spec.md
|
|
137
|
-
└── config.yaml
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
**This works well for single-project repos.** But what about:
|
|
141
|
-
- Large monorepos with 50+ packages?
|
|
142
|
-
- Multi-repo microservices?
|
|
143
|
-
- Cross-functional features spanning multiple teams?
|
|
144
|
-
|
|
145
|
-
### The Checkout/Payment Example
|
|
146
|
-
|
|
147
|
-
Imagine a payment system with:
|
|
148
|
-
- **Backend billing team**: Owns payment processing
|
|
149
|
-
- **Web team**: Owns web checkout UX
|
|
150
|
-
- **iOS team**: Owns iOS checkout UX
|
|
151
|
-
- **Android team**: Owns Android checkout UX
|
|
152
|
-
- **Cross-cutting**: The payment *contract* all clients must follow
|
|
153
|
-
|
|
154
|
-
**Questions:**
|
|
155
|
-
- Where does the shared payment contract spec live?
|
|
156
|
-
- Where do platform-specific checkout specs live?
|
|
157
|
-
- If iOS spec "extends" the shared contract, how is that expressed?
|
|
158
|
-
- When the contract changes, how do downstream specs get updated?
|
|
159
|
-
- Who owns what?
|
|
160
|
-
|
|
161
|
-
### The Core Tension
|
|
162
|
-
|
|
163
|
-
```
|
|
164
|
-
SCOPE
|
|
165
|
-
│
|
|
166
|
-
Narrow │ Broad
|
|
167
|
-
(team/module) │ (cross-cutting)
|
|
168
|
-
│
|
|
169
|
-
┌─────────────────┼─────────────────┐
|
|
170
|
-
│ │ │
|
|
171
|
-
│ "Our team's │ "Shared │
|
|
172
|
-
│ checkout │ checkout │
|
|
173
|
-
│ behavior" │ contract" │
|
|
174
|
-
│ │ │
|
|
175
|
-
────┼─────────────────┼─────────────────┼──── OWNERSHIP
|
|
176
|
-
│ │ │
|
|
177
|
-
│ Easy: │ Hard: │
|
|
178
|
-
│ One team, │ Multiple │
|
|
179
|
-
│ one spec │ stakeholders │
|
|
180
|
-
│ │ │
|
|
181
|
-
└─────────────────┴─────────────────┘
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
---
|
|
185
|
-
|
|
186
|
-
## Part 3: How Other Domains Solve This
|
|
187
|
-
|
|
188
|
-
### Patterns from Research
|
|
189
|
-
|
|
190
|
-
| Domain | Shared Stuff | Specific Stuff | How They Connect |
|
|
191
|
-
|--------|-------------|----------------|------------------|
|
|
192
|
-
| **Protobuf** | `common/` at root | `domain/service/` per service | Imports from common |
|
|
193
|
-
| **Design Systems** | Design tokens, component names, APIs | Platform implementations | "Same properties, different rendering" |
|
|
194
|
-
| **DDD** | Shared Kernel | Bounded Contexts | Context mapping defines relationships |
|
|
195
|
-
| **RFCs** | Cross-cutting RFCs | Team-scoped RFCs | Different review processes |
|
|
196
|
-
| **OpenAPI** | Base schemas | Per-service specs | `$ref` to shared definitions |
|
|
197
|
-
|
|
198
|
-
### Protobuf Monorepo Pattern
|
|
199
|
-
|
|
200
|
-
```
|
|
201
|
-
proto/
|
|
202
|
-
├── common/ # Shared, low-churn types
|
|
203
|
-
│ └── money.proto
|
|
204
|
-
│ └── address.proto
|
|
205
|
-
├── billing/ # Domain-specific
|
|
206
|
-
│ └── service.proto
|
|
207
|
-
└── checkout/
|
|
208
|
-
└── service.proto # Imports from common/
|
|
209
|
-
```
|
|
210
|
-
|
|
211
|
-
**Key insight:** "Most engineering organizations should keep their proto files in one repo. The mental overhead stays constant instead of scaling with organization size."
|
|
212
|
-
|
|
213
|
-
### Design Systems Pattern (Booking.com, Uber)
|
|
214
|
-
|
|
215
|
-
> "Components can look quite different between iOS and Android, as they use native app design standards, but still share the **same exact properties in code**. This is what makes properties so powerful—it's the **one source of truth** for every component."
|
|
216
|
-
|
|
217
|
-
**Key insight:** Shared spec defines the *contract* (properties, behavior). Platform specs define *implementation details* (how it looks/works on that platform).
|
|
218
|
-
|
|
219
|
-
### DDD Bounded Contexts
|
|
220
|
-
|
|
221
|
-
> "One context, one team. Clear ownership avoids miscommunication."
|
|
222
|
-
|
|
223
|
-
**Key insight:** Specs should have clear ownership. Cross-cutting concerns use a "Shared Kernel" pattern—explicitly shared code/specs that require coordination to change.
|
|
224
|
-
|
|
225
|
-
---
|
|
226
|
-
|
|
227
|
-
## Part 4: Three Models for OpenSpec
|
|
228
|
-
|
|
229
|
-
### Model A: Flat Root (Current)
|
|
230
|
-
|
|
231
|
-
```
|
|
232
|
-
openspec/
|
|
233
|
-
├── specs/
|
|
234
|
-
│ ├── checkout-contract/ # Shared contract
|
|
235
|
-
│ ├── checkout-web/ # Web-specific
|
|
236
|
-
│ ├── checkout-ios/ # iOS-specific
|
|
237
|
-
│ ├── checkout-android/ # Android-specific
|
|
238
|
-
│ ├── billing/ # Backend
|
|
239
|
-
│ └── ... (50+ specs at root level)
|
|
240
|
-
└── changes/
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
**Pros:**
|
|
244
|
-
- Simple mental model
|
|
245
|
-
- All specs in one place
|
|
246
|
-
- No nesting complexity
|
|
247
|
-
|
|
248
|
-
**Cons:**
|
|
249
|
-
- Gets unwieldy at scale (50+ directories)
|
|
250
|
-
- No clear ownership signals
|
|
251
|
-
- Hard to see which specs are related
|
|
252
|
-
- Naming conventions become critical (`checkout-*`)
|
|
253
|
-
|
|
254
|
-
### Model B: Nested Specs (Domain → Platform)
|
|
255
|
-
|
|
256
|
-
```
|
|
257
|
-
openspec/
|
|
258
|
-
├── specs/
|
|
259
|
-
│ ├── checkout/
|
|
260
|
-
│ │ ├── spec.md # Shared contract (the "interface")
|
|
261
|
-
│ │ ├── web/spec.md # Web implementation spec
|
|
262
|
-
│ │ ├── ios/spec.md # iOS implementation spec
|
|
263
|
-
│ │ └── android/spec.md # Android implementation spec
|
|
264
|
-
│ └── billing/
|
|
265
|
-
│ └── spec.md
|
|
266
|
-
└── changes/
|
|
267
|
-
```
|
|
268
|
-
|
|
269
|
-
**Pros:**
|
|
270
|
-
- Clear hierarchy (shared at top, specific nested)
|
|
271
|
-
- Related specs are co-located
|
|
272
|
-
- Scales better visually
|
|
273
|
-
- Ownership can follow structure
|
|
274
|
-
|
|
275
|
-
**Cons:**
|
|
276
|
-
- More complex spec references (`checkout/web` vs `checkout`)
|
|
277
|
-
- Need to define inheritance/extension semantics
|
|
278
|
-
- Does iOS spec "extend" base spec, or just reference it?
|
|
279
|
-
|
|
280
|
-
**Open question:** What does "extends" mean?
|
|
281
|
-
```yaml
|
|
282
|
-
# checkout/ios/spec.md
|
|
283
|
-
extends: ../spec.md # Inherits all requirements?
|
|
284
|
-
requirements:
|
|
285
|
-
- System SHALL support Apple Pay # Adds to base?
|
|
286
|
-
```
|
|
287
|
-
|
|
288
|
-
### Model C: Distributed Specs (Near the Code)
|
|
289
|
-
|
|
290
|
-
```
|
|
291
|
-
monorepo/
|
|
292
|
-
├── services/
|
|
293
|
-
│ └── billing/
|
|
294
|
-
│ └── openspec/specs/billing/spec.md
|
|
295
|
-
├── clients/
|
|
296
|
-
│ ├── web/
|
|
297
|
-
│ │ └── openspec/specs/checkout/spec.md
|
|
298
|
-
│ ├── ios/
|
|
299
|
-
│ │ └── openspec/specs/checkout/spec.md
|
|
300
|
-
│ └── android/
|
|
301
|
-
│ └── openspec/specs/checkout/spec.md
|
|
302
|
-
└── openspec/ # Root-level for cross-cutting
|
|
303
|
-
├── specs/
|
|
304
|
-
│ └── checkout-contract/spec.md # Shared contract
|
|
305
|
-
└── changes/ # Where do cross-cutting changes live?
|
|
306
|
-
```
|
|
307
|
-
|
|
308
|
-
**Pros:**
|
|
309
|
-
- Specs live near the code they describe
|
|
310
|
-
- Teams own their specs naturally
|
|
311
|
-
- Works for multi-repo too (each repo has its own `openspec/`)
|
|
312
|
-
|
|
313
|
-
**Cons:**
|
|
314
|
-
- Cross-cutting specs are awkward (where do they go?)
|
|
315
|
-
- Changes that span multiple `openspec/` directories = ???
|
|
316
|
-
- Need a "workspace" concept to aggregate
|
|
317
|
-
- Multiple `openspec/` roots to manage
|
|
318
|
-
|
|
319
|
-
### Model D: Hybrid (Model B Inside Each Project + Model C Across Projects)
|
|
320
|
-
|
|
321
|
-
Use one `openspec/` root per project, but allow nested specs within that root for clear ownership and shared contracts.
|
|
322
|
-
For multi-repo work, use a workspace manifest to coordinate multiple projects without duplicating canonical specs.
|
|
323
|
-
|
|
324
|
-
**Monorepo shape (single project, nested specs):**
|
|
325
|
-
```
|
|
326
|
-
repo/
|
|
327
|
-
└── openspec/
|
|
328
|
-
├── specs/
|
|
329
|
-
│ ├── contracts/
|
|
330
|
-
│ │ └── checkout/spec.md
|
|
331
|
-
│ ├── billing/
|
|
332
|
-
│ │ └── spec.md
|
|
333
|
-
│ └── checkout/
|
|
334
|
-
│ ├── web/spec.md
|
|
335
|
-
│ ├── ios/spec.md
|
|
336
|
-
│ └── android/spec.md
|
|
337
|
-
└── changes/
|
|
338
|
-
└── add-3ds/
|
|
339
|
-
├── proposal.md
|
|
340
|
-
├── design.md
|
|
341
|
-
├── tasks.md
|
|
342
|
-
└── specs/
|
|
343
|
-
├── contracts/checkout/spec.md
|
|
344
|
-
├── billing/spec.md
|
|
345
|
-
├── checkout/web/spec.md
|
|
346
|
-
├── checkout/ios/spec.md
|
|
347
|
-
└── checkout/android/spec.md
|
|
348
|
-
```
|
|
349
|
-
|
|
350
|
-
**Multi-repo shape (multiple projects + workspace orchestration):**
|
|
351
|
-
```
|
|
352
|
-
~/work/
|
|
353
|
-
├── contracts/
|
|
354
|
-
│ └── openspec/
|
|
355
|
-
│ ├── specs/checkout/spec.md
|
|
356
|
-
│ └── changes/add-3ds-contract/
|
|
357
|
-
├── billing-service/
|
|
358
|
-
│ └── openspec/
|
|
359
|
-
│ ├── specs/billing/spec.md
|
|
360
|
-
│ └── changes/add-3ds-billing/
|
|
361
|
-
├── web-client/
|
|
362
|
-
│ └── openspec/
|
|
363
|
-
│ ├── specs/checkout/spec.md
|
|
364
|
-
│ └── changes/add-3ds-web/
|
|
365
|
-
├── ios-client/
|
|
366
|
-
│ └── openspec/
|
|
367
|
-
│ ├── specs/checkout/spec.md
|
|
368
|
-
│ └── changes/add-3ds-ios/
|
|
369
|
-
└── payments-workspace/
|
|
370
|
-
└── .openspec-workspace/
|
|
371
|
-
├── workspace.yaml
|
|
372
|
-
└── initiatives/add-3ds/links.yaml
|
|
373
|
-
```
|
|
374
|
-
|
|
375
|
-
`workspace.yaml` lists projects/roots. `links.yaml` maps one cross-cutting initiative to per-project changes.
|
|
376
|
-
Canonical specs stay in owning repos; workspace data is coordination metadata only.
|
|
377
|
-
|
|
378
|
-
**Pros:**
|
|
379
|
-
- Clear ownership boundaries (one project owns its specs and changes)
|
|
380
|
-
- Shared contracts can have a dedicated owner repo (no duplication as source of truth)
|
|
381
|
-
- Works for monorepo and multi-repo with one mental model
|
|
382
|
-
- Avoids inheritance complexity (relationships can start as explicit references)
|
|
383
|
-
- Incremental migration path from current model
|
|
384
|
-
|
|
385
|
-
**Cons:**
|
|
386
|
-
- Requires new workspace UX for cross-repo coordination
|
|
387
|
-
- Cross-repo feature work creates multiple change IDs to manage
|
|
388
|
-
- Needs conventions for contracts ownership and initiative linking
|
|
389
|
-
- Some users may expect one global "mega change" instead of linked per-project changes
|
|
390
|
-
- Tooling must support nested spec paths in both main specs and change deltas
|
|
391
|
-
|
|
392
|
-
---
|
|
393
|
-
|
|
394
|
-
## Part 5: Multi-Repo Considerations
|
|
395
|
-
|
|
396
|
-
For multi-repo setups, Model C (or the coordination half of Model D) is almost forced:
|
|
397
|
-
|
|
398
|
-
```
|
|
399
|
-
~/work/
|
|
400
|
-
├── billing-service/
|
|
401
|
-
│ └── openspec/specs/billing/
|
|
402
|
-
├── web-client/
|
|
403
|
-
│ └── openspec/specs/checkout/
|
|
404
|
-
├── ios-client/
|
|
405
|
-
│ └── openspec/specs/checkout/
|
|
406
|
-
└── contracts/ # Dedicated repo for shared specs?
|
|
407
|
-
└── openspec/specs/
|
|
408
|
-
└── checkout-contract/
|
|
409
|
-
```
|
|
410
|
-
|
|
411
|
-
### Questions for Multi-Repo
|
|
412
|
-
|
|
413
|
-
1. **Where do shared specs live?**
|
|
414
|
-
- Dedicated "contracts" repo?
|
|
415
|
-
- Duplicated in each repo (drift risk)?
|
|
416
|
-
- One repo is "source of truth" and others reference it?
|
|
417
|
-
|
|
418
|
-
2. **Where do cross-repo changes live?**
|
|
419
|
-
- In one of the repos? (feels wrong—biased ownership)
|
|
420
|
-
- In a separate "workspace" repo?
|
|
421
|
-
- In `~/.config/openspec/workspaces/my-platform/changes/`?
|
|
422
|
-
|
|
423
|
-
3. **How do changes propagate?**
|
|
424
|
-
- Change to `checkout-contract` affects all client repos
|
|
425
|
-
- Do we need explicit dependency tracking?
|
|
426
|
-
- Or is this "out of band" (teams coordinate manually)?
|
|
427
|
-
|
|
428
|
-
### What "Workspace" Might Mean for Multi-Repo
|
|
429
|
-
|
|
430
|
-
If we add workspace support, it could be:
|
|
431
|
-
|
|
432
|
-
> **A workspace is a collection of OpenSpec roots that can be operated on together.**
|
|
433
|
-
|
|
434
|
-
```yaml
|
|
435
|
-
# ~/.config/openspec/workspaces.yaml (or similar)
|
|
436
|
-
workspaces:
|
|
437
|
-
my-platform:
|
|
438
|
-
roots:
|
|
439
|
-
- ~/work/billing-service
|
|
440
|
-
- ~/work/web-client
|
|
441
|
-
- ~/work/ios-client
|
|
442
|
-
- ~/work/contracts
|
|
443
|
-
shared_context: |
|
|
444
|
-
All services use TypeScript.
|
|
445
|
-
API contracts follow OpenAPI 3.1.
|
|
446
|
-
```
|
|
447
|
-
|
|
448
|
-
This would enable:
|
|
449
|
-
1. **Cross-repo changes**: Create a change that tracks deltas across multiple roots
|
|
450
|
-
2. **Aggregated spec view**: See all specs across workspace
|
|
451
|
-
3. **Shared context**: Context/rules that apply to all roots
|
|
452
|
-
|
|
453
|
-
---
|
|
454
|
-
|
|
455
|
-
## Part 6: Key Design Questions
|
|
456
|
-
|
|
457
|
-
### 1. Should specs be hierarchical (with inheritance)?
|
|
458
|
-
|
|
459
|
-
**Option A: No inheritance, just organization**
|
|
460
|
-
- Nested directories are purely organizational
|
|
461
|
-
- Each spec is independent
|
|
462
|
-
- Relationships are implicit (naming) or documented manually
|
|
463
|
-
|
|
464
|
-
**Option B: Explicit inheritance**
|
|
465
|
-
```yaml
|
|
466
|
-
# checkout/ios/spec.md
|
|
467
|
-
extends: ../spec.md
|
|
468
|
-
requirements:
|
|
469
|
-
- System SHALL support Apple Pay # Adds to base
|
|
470
|
-
```
|
|
471
|
-
- Child specs inherit parent requirements
|
|
472
|
-
- Can add, override, or extend
|
|
473
|
-
- More powerful but more complex
|
|
474
|
-
|
|
475
|
-
**Option C: References without inheritance**
|
|
476
|
-
```yaml
|
|
477
|
-
# checkout/ios/spec.md
|
|
478
|
-
references:
|
|
479
|
-
- ../spec.md # "See also" but no inheritance
|
|
480
|
-
requirements:
|
|
481
|
-
- System SHALL implement checkout per checkout-contract
|
|
482
|
-
- System SHALL support Apple Pay
|
|
483
|
-
```
|
|
484
|
-
- Explicit references for documentation
|
|
485
|
-
- No automatic inheritance
|
|
486
|
-
- Simpler semantics
|
|
487
|
-
|
|
488
|
-
### 2. Where does the "shared kernel" live?
|
|
489
|
-
|
|
490
|
-
**Option A: Root level (Model B)**
|
|
491
|
-
- `openspec/specs/checkout/spec.md` is the shared kernel
|
|
492
|
-
- Platform specs nest under it
|
|
493
|
-
|
|
494
|
-
**Option B: Dedicated area**
|
|
495
|
-
- `openspec/specs/_shared/checkout-contract/spec.md`
|
|
496
|
-
- Or `openspec/specs/_contracts/checkout/spec.md`
|
|
497
|
-
- Explicit "shared" namespace
|
|
498
|
-
|
|
499
|
-
**Option C: Separate repo (Model C for multi-repo)**
|
|
500
|
-
- A dedicated `contracts` or `specs` repo
|
|
501
|
-
- Other repos reference it
|
|
502
|
-
|
|
503
|
-
### 3. What's a "workspace" vs a "project"?
|
|
504
|
-
|
|
505
|
-
If we introduce workspaces:
|
|
506
|
-
|
|
507
|
-
| Concept | Definition |
|
|
508
|
-
|---------|------------|
|
|
509
|
-
| **Project** | Single OpenSpec root (one `openspec/` directory) |
|
|
510
|
-
| **Workspace** | Collection of projects that can be operated on together |
|
|
511
|
-
|
|
512
|
-
A workspace would enable:
|
|
513
|
-
- Aggregated spec viewing across projects
|
|
514
|
-
- Cross-project changes
|
|
515
|
-
- Shared context across projects
|
|
516
|
-
|
|
517
|
-
**Question:** Do we need explicit workspace tracking, or just ad-hoc multi-root (like Claude Code's `/add-dir`)?
|
|
518
|
-
|
|
519
|
-
### 4. Does OpenSpec need to understand dependencies?
|
|
520
|
-
|
|
521
|
-
If `checkout-web` depends on `checkout-contract`:
|
|
522
|
-
- Should OpenSpec know this relationship?
|
|
523
|
-
- Should a change to `checkout-contract` warn about downstream specs?
|
|
524
|
-
- Or is dependency tracking "out of scope"?
|
|
525
|
-
|
|
526
|
-
**Trade-off:**
|
|
527
|
-
- With dependency tracking: More powerful, automatic propagation warnings
|
|
528
|
-
- Without: Simpler, teams manage dependencies themselves
|
|
529
|
-
|
|
530
|
-
### 5. How should changes work for cross-cutting work?
|
|
531
|
-
|
|
532
|
-
**For monorepos (Model B):**
|
|
533
|
-
- One change, multiple delta specs in `specs/`
|
|
534
|
-
- Already works today
|
|
535
|
-
|
|
536
|
-
**For multi-repo (Model C):**
|
|
537
|
-
- Option A: One "workspace change" that references multiple repo changes
|
|
538
|
-
- Option B: Separate changes in each repo that reference each other
|
|
539
|
-
- Option C: Changes always live in one repo, reference specs in others
|
|
540
|
-
|
|
541
|
-
---
|
|
542
|
-
|
|
543
|
-
## Part 7: What Would "Amazing" Look Like?
|
|
544
|
-
|
|
545
|
-
Based on research, teams love:
|
|
546
|
-
|
|
547
|
-
1. **One place to look** (Protobuf: "mental overhead stays constant")
|
|
548
|
-
2. **Clear ownership** (DDD: "one context, one team")
|
|
549
|
-
3. **Shared contracts with local extensions** (Design Systems: "same properties, different rendering")
|
|
550
|
-
4. **Automatic consistency** (Design Systems: "design tokens as foundation")
|
|
551
|
-
5. **Low cognitive load** (shouldn't have to think about organization too much)
|
|
552
|
-
|
|
553
|
-
### Possible North Stars
|
|
554
|
-
|
|
555
|
-
**Ambitious:**
|
|
556
|
-
> OpenSpec automatically understands your repo structure, detects cross-cutting specs, and helps you create changes that flow to the right places.
|
|
557
|
-
|
|
558
|
-
**Simpler:**
|
|
559
|
-
> You organize specs however you want. OpenSpec just works.
|
|
560
|
-
|
|
561
|
-
**Practical:**
|
|
562
|
-
> Nested specs for organization. Explicit dependencies for cross-cutting. No magic.
|
|
563
|
-
|
|
564
|
-
---
|
|
565
|
-
|
|
566
|
-
## Part 8: Possible Paths Forward
|
|
567
|
-
|
|
568
|
-
### For This Change (simplify-skill-installation)
|
|
569
|
-
|
|
570
|
-
Don't solve spec organization now. Keep scope to:
|
|
571
|
-
1. Profile UX simplification
|
|
572
|
-
2. `openspec init` improvements
|
|
573
|
-
3. No workspace tracking yet
|
|
574
|
-
|
|
575
|
-
### Future: Spec Organization Change
|
|
576
|
-
|
|
577
|
-
A separate change to explore and implement:
|
|
578
|
-
|
|
579
|
-
1. **Decide on Model A, B, C, or D (hybrid)**
|
|
580
|
-
2. **Decide on inheritance semantics** (or none)
|
|
581
|
-
3. **Update spec resolution** to handle nesting
|
|
582
|
-
4. **Update change deltas** to handle nested specs
|
|
583
|
-
|
|
584
|
-
### Future: Multi-Repo / Workspace Change
|
|
585
|
-
|
|
586
|
-
If needed, a separate change for:
|
|
587
|
-
|
|
588
|
-
1. **Define workspace concept**
|
|
589
|
-
2. **Implement workspace tracking** (or ad-hoc multi-root)
|
|
590
|
-
3. **Cross-repo changes**
|
|
591
|
-
4. **Shared context across repos**
|
|
592
|
-
|
|
593
|
-
---
|
|
594
|
-
|
|
595
|
-
## Part 9: Spec Philosophy (Behavior First, Lightweight, Agent-Aligned)
|
|
596
|
-
|
|
597
|
-
### What is a spec in OpenSpec?
|
|
598
|
-
|
|
599
|
-
For OpenSpec, a spec should be treated as a **verifiable behavior contract at a boundary**:
|
|
600
|
-
- What users, integrators, or operators can observe and rely on
|
|
601
|
-
- What can be validated with tests, checks, or explicit review
|
|
602
|
-
- What should remain stable even if internal implementation changes
|
|
603
|
-
|
|
604
|
-
### What should and should not be in specs
|
|
605
|
-
|
|
606
|
-
**Include:**
|
|
607
|
-
- Observable behavior and outcomes
|
|
608
|
-
- Interface/data contracts (inputs, outputs, error conditions)
|
|
609
|
-
- Non-functional constraints that matter externally (privacy, security, reliability)
|
|
610
|
-
- Compatibility guarantees that downstream consumers depend on
|
|
611
|
-
|
|
612
|
-
**Avoid:**
|
|
613
|
-
- Internal implementation details (class names, library choices, control flow)
|
|
614
|
-
- Tooling mechanics that can change without affecting behavior
|
|
615
|
-
- Step-by-step execution plans (belongs in tasks/design)
|
|
616
|
-
|
|
617
|
-
### Keep rigor proportional (to avoid bureaucracy)
|
|
618
|
-
|
|
619
|
-
Use progressive rigor:
|
|
620
|
-
|
|
621
|
-
1. **Lite spec (default for most changes)**
|
|
622
|
-
- Short behavior bullets, clear scope, and acceptance checks
|
|
623
|
-
2. **Full spec (only for high-risk or cross-boundary work)**
|
|
624
|
-
- Deeper contract detail for API breaks, migrations, security/privacy, or cross-team/repo changes
|
|
625
|
-
|
|
626
|
-
This keeps day-to-day usage lightweight while preserving clarity where failures are expensive.
|
|
627
|
-
|
|
628
|
-
### Human exploration -> agent-authored specs
|
|
629
|
-
|
|
630
|
-
OpenSpec is often agent-authored from human exploration. To make that reliable:
|
|
631
|
-
|
|
632
|
-
- Humans provide intent, constraints, and examples from exploration
|
|
633
|
-
- Agents convert that into concise, behavior-first requirements and scenarios
|
|
634
|
-
- Agents keep implementation detail in design/tasks, not specs
|
|
635
|
-
- Validation checks enforce structure and testability
|
|
636
|
-
|
|
637
|
-
In short: humans shape intent; agents produce consistent, verifiable contracts.
|
|
638
|
-
|
|
639
|
-
### Where this philosophy should live
|
|
640
|
-
|
|
641
|
-
To avoid losing this in exploration notes, codify it in:
|
|
642
|
-
1. `docs/concepts.md` for human-facing framing
|
|
643
|
-
2. `openspec/specs/openspec-conventions/spec.md` for normative spec conventions
|
|
644
|
-
3. `openspec/specs/docs-agent-instructions/spec.md` for agent-instruction authoring rules
|
|
645
|
-
|
|
646
|
-
---
|
|
647
|
-
|
|
648
|
-
## Part 10: Design Decisions (April 2026)
|
|
649
|
-
|
|
650
|
-
After evaluating the models above against real multi-repo use cases (see [#725](https://github.com/Fission-AI/OpenSpec/issues/725)), we converged on the following design direction.
|
|
651
|
-
|
|
652
|
-
### Core Insight
|
|
653
|
-
|
|
654
|
-
The workspace itself is not the durable thing. For large teams, the durable planning object is the **initiative** or **plan**, while repo-local specs and changes remain the execution artifacts owned by each repo. The set of repos involved in a feature is typically feature-scoped and changes over time, so a static workspace manifest that must be configured before work begins creates ceremony that doesn't match how teams actually work.
|
|
655
|
-
|
|
656
|
-
### Decision: Model D with Lazy Workspace
|
|
657
|
-
|
|
658
|
-
Choose Model D (Hybrid) from Part 4, but make the workspace manifest **optional and lazy, not prerequisite**.
|
|
659
|
-
|
|
660
|
-
- **Each repo keeps its own canonical `openspec/`** — no change to the fundamental storage model.
|
|
661
|
-
- **Cross-root work can be coordinated through an initiative in a coordination workspace** — this is where shared planning lives when the work stops being cleanly repo-scoped.
|
|
662
|
-
- **"Workspace" is a derived or explicit coordination view** over linked repos and linked changes, not something users must register up front.
|
|
663
|
-
- **Persist a workspace manifest only when someone explicitly wants a reusable cross-repo bundle** — this is an opt-in convenience, not a requirement.
|
|
664
|
-
|
|
665
|
-
### Decision: Initiative-First Planning with Linked Repo-Local Changes
|
|
666
|
-
|
|
667
|
-
For larger multi-team work, repo-centric planning is the wrong primary abstraction. Teams and repos are many-to-many facets over the same work. OpenSpec should treat the **initiative / plan** as the first-class planning object, then link repo-local changes to it.
|
|
668
|
-
|
|
669
|
-
This is especially important because a change today bundles:
|
|
670
|
-
|
|
671
|
-
- `proposal.md`
|
|
672
|
-
- `design.md`
|
|
673
|
-
- `tasks.md`
|
|
674
|
-
- delta specs
|
|
675
|
-
- `.openspec.yaml`
|
|
676
|
-
|
|
677
|
-
That bundled shape works well for repo-local work, but becomes awkward when one piece of work spans multiple repos or teams. In those cases, a single repo-local change is trying to act as both:
|
|
678
|
-
|
|
679
|
-
- the shared planning object
|
|
680
|
-
- the repo-specific execution artifact
|
|
681
|
-
|
|
682
|
-
Those should be split.
|
|
683
|
-
|
|
684
|
-
The preferred model is:
|
|
685
|
-
|
|
686
|
-
```text
|
|
687
|
-
coordination workspace /
|
|
688
|
-
.openspec-workspace/
|
|
689
|
-
workspace.yaml
|
|
690
|
-
initiatives/
|
|
691
|
-
add-3ds/
|
|
692
|
-
initiative.yaml
|
|
693
|
-
proposal.md
|
|
694
|
-
design.md
|
|
695
|
-
links.yaml
|
|
696
|
-
|
|
697
|
-
repo-A/
|
|
698
|
-
openspec/
|
|
699
|
-
changes/
|
|
700
|
-
add-3ds-api/
|
|
701
|
-
.openspec.yaml
|
|
702
|
-
tasks.md
|
|
703
|
-
specs/
|
|
704
|
-
|
|
705
|
-
repo-B/
|
|
706
|
-
openspec/
|
|
707
|
-
changes/
|
|
708
|
-
add-3ds-web/
|
|
709
|
-
.openspec.yaml
|
|
710
|
-
tasks.md
|
|
711
|
-
specs/
|
|
712
|
-
```
|
|
713
|
-
|
|
714
|
-
The initiative holds the shared planning layer:
|
|
715
|
-
|
|
716
|
-
- proposal / intent
|
|
717
|
-
- shared design and tradeoffs
|
|
718
|
-
- participating teams
|
|
719
|
-
- impacted repos
|
|
720
|
-
- milestones, risks, and dependencies
|
|
721
|
-
- links to repo-local changes
|
|
722
|
-
|
|
723
|
-
Each repo-local change holds the execution layer for that repo:
|
|
724
|
-
|
|
725
|
-
- repo-specific tasks
|
|
726
|
-
- delta specs
|
|
727
|
-
- local implementation status
|
|
728
|
-
- optional local notes that should archive with that repo's work
|
|
729
|
-
|
|
730
|
-
Cross-repo linking still matters, but it should hang off the initiative and the repo-local changes:
|
|
731
|
-
|
|
732
|
-
```yaml
|
|
733
|
-
# billing-service/openspec/changes/add-3ds/.openspec.yaml
|
|
734
|
-
schema: spec-driven
|
|
735
|
-
created: 2026-04-12
|
|
736
|
-
initiative: add-3ds
|
|
737
|
-
links:
|
|
738
|
-
- project: github.com/fission/web-client
|
|
739
|
-
change: add-3ds-checkout
|
|
740
|
-
- project: github.com/fission/ios-client
|
|
741
|
-
change: add-3ds-checkout
|
|
742
|
-
```
|
|
743
|
-
|
|
744
|
-
Each repo still holds its own change with its own deltas. A cross-repo effort is represented as one initiative plus N linked single-repo changes. This is preferable to a single mega-change because:
|
|
745
|
-
- Shared planning has one truthful home
|
|
746
|
-
- Each repo's change goes through its own archive cycle
|
|
747
|
-
- No need to resolve cross-repo file paths in delta specs
|
|
748
|
-
- Teams can move at different speeds (web ships before iOS)
|
|
749
|
-
|
|
750
|
-
For small single-repo work, a repo-local change may still be "good enough" as both plan and execution bundle. The initiative-first split matters once work becomes cross-team, cross-module, cross-repo, or otherwise coordination-heavy.
|
|
751
|
-
|
|
752
|
-
### Decision: Stable Project Identifiers, Not Paths
|
|
753
|
-
|
|
754
|
-
Cross-repo links must use **stable project identifiers**, not filesystem paths.
|
|
755
|
-
|
|
756
|
-
- **Canonical form:** A normalized `host/org/repo` tuple (e.g., `github.com/fission/web-client`).
|
|
757
|
-
- **Authoring shorthand:** The CLI accepts `org/repo` (e.g., `fission/web-client`) and infers the host from the current repo's remote.
|
|
758
|
-
- **Relative paths are never the durable identifier.** They may exist only as cached local resolution results.
|
|
759
|
-
|
|
760
|
-
### Decision: Offline-First Resolution
|
|
761
|
-
|
|
762
|
-
The CLI resolves project identifiers to local paths using an offline-first chain:
|
|
763
|
-
|
|
764
|
-
1. **Explicit paths** passed for the current run (e.g., CLI flags, ad-hoc multi-root).
|
|
765
|
-
2. **Local OpenSpec repo registry** — a persistent mapping in `~/.config/openspec/` or `~/.local/share/openspec/` (see `src/core/global-config.ts`).
|
|
766
|
-
3. **Parent directory scanning** — scan known parent directories for git checkouts whose remotes match the target identifier.
|
|
767
|
-
4. **Unresolved** — if no local path is found, leave the target unresolved and continue with a partial workspace. The CLI must not fail.
|
|
768
|
-
|
|
769
|
-
The registry is populated progressively: when the CLI discovers a clone (via scanning or user prompt), it persists the mapping for future resolution. The registry also stores "known scan roots" (e.g., `~/work/`) so scanning improves over time without upfront configuration.
|
|
770
|
-
|
|
771
|
-
### Decision: Informational References Only (v1)
|
|
772
|
-
|
|
773
|
-
Spec-level cross-repo references are **documentation-only pointers**:
|
|
774
|
-
|
|
775
|
-
```yaml
|
|
776
|
-
# web-client/openspec/specs/checkout/spec.md frontmatter
|
|
777
|
-
references:
|
|
778
|
-
- project: github.com/fission/contracts-service
|
|
779
|
-
spec: checkout-contract
|
|
780
|
-
```
|
|
781
|
-
|
|
782
|
-
- The CLI does **not** fail validation because a referenced cross-repo spec is missing or unresolved.
|
|
783
|
-
- The CLI **does** surface references to humans and agents when planning, viewing, or applying changes.
|
|
784
|
-
- Stronger guarantees (e.g., staleness warnings, cross-repo validation) are an opt-in layer added later — via `lint`, `doctor`, or a feature flag — not baseline behavior.
|
|
785
|
-
|
|
786
|
-
This avoids accidentally committing OpenSpec to a full dependency graph system before the use cases justify it.
|
|
787
|
-
|
|
788
|
-
### Decision: Explicit Owner Repo for Shared Contracts
|
|
789
|
-
|
|
790
|
-
When a spec cannot be mapped to a single implementation repo (e.g., a shared API contract):
|
|
791
|
-
|
|
792
|
-
- **One repo must be the explicit owner.** This can be a dedicated "contracts" repo, or whichever repo is the natural source of truth.
|
|
793
|
-
- **Other repos reference the owning repo's spec** via informational references (see above).
|
|
794
|
-
- **There is no default "pure spec repo" pattern.** Separating spec ownership from code ownership too aggressively makes agent execution awkward and diffuses responsibility.
|
|
795
|
-
|
|
796
|
-
### Monorepo vs. Multi-Repo Summary
|
|
797
|
-
|
|
798
|
-
| Concern | Monorepo | Multi-Repo |
|
|
799
|
-
|---------|----------|------------|
|
|
800
|
-
| **Spec organization** | Nested specs inside one `openspec/` (Model B) | Each repo has its own `openspec/` |
|
|
801
|
-
| **Cross-cutting specs** | Nested under a `contracts/` or `shared/` directory | Dedicated owner repo, others reference it |
|
|
802
|
-
| **Planning object** | Initiative optional for simple work, useful for large cross-team efforts | Initiative is the primary coordination object |
|
|
803
|
-
| **Changes** | One or more repo-local changes can implement one initiative | Linked per-repo changes implement one initiative |
|
|
804
|
-
| **Relationships** | References (no inheritance in v1) | Project identifier links, informational only |
|
|
805
|
-
| **Workspace** | Usually not needed, but can host initiative planning for complex work | Coordination workspace hosts initiative planning; optional manifest for reuse |
|
|
806
|
-
|
|
807
|
-
### Implementation Path
|
|
808
|
-
|
|
809
|
-
1. **Define initiative artifacts** — add an initiative format for shared planning in coordination workspaces.
|
|
810
|
-
2. **Extend change metadata** — let repo-local changes point at an initiative and linked sibling changes.
|
|
811
|
-
3. **Extend spec metadata** — add `references` field for cross-repo spec pointers.
|
|
812
|
-
4. **Build project resolution** — implement the offline-first resolution chain and local registry.
|
|
813
|
-
5. **Build initiative and link views** — commands that resolve and display the initiative graph plus linked repo-local changes.
|
|
814
|
-
6. **Support ad-hoc multi-root** — "add these dirs for this run" or "derive roots from this initiative's links."
|
|
815
|
-
7. **Optional workspace manifest** — add saved workspaces only if teams demonstrate reuse patterns.
|
|
816
|
-
|
|
817
|
-
Nested specs (Model B inside a single repo) are a prerequisite for clean monorepo support and should be tackled first, as outlined in #662.
|
|
818
|
-
|
|
819
|
-
---
|
|
820
|
-
|
|
821
|
-
## Summary
|
|
822
|
-
|
|
823
|
-
| Question | Status | Notes |
|
|
824
|
-
|----------|--------|-------|
|
|
825
|
-
| Profile UX | Decided | `openspec config profile` with presets |
|
|
826
|
-
| Config layering | Decided | Two layers: global + project (no workspace layer) |
|
|
827
|
-
| Spec organization | **Direction set** | Nested specs per repo, explicit owner repos for shared contracts, references for cross-repo context |
|
|
828
|
-
| Spec philosophy | Direction set | Behavior-first contracts, progressive rigor, and agent-aligned authoring |
|
|
829
|
-
| Spec inheritance | **Decided** | References only, no inheritance in v1 |
|
|
830
|
-
| Initiative / planning model | **Direction set** | Initiative-first planning for larger work, with repo-local changes as execution artifacts |
|
|
831
|
-
| Multi-repo support | **Direction set** | Linked per-repo changes under shared initiatives; workspace is coordination, not canonical execution storage |
|
|
832
|
-
| Dependency tracking | **Decided** | Out of scope for v1; references are informational only |
|
|
833
|
-
| Cross-repo resolution | **Decided** | Offline-first resolution chain with local registry |
|
|
834
|
-
| Shared contracts | **Decided** | Explicit owner repo required; no default pure-spec-repo pattern |
|
|
835
|
-
|
|
836
|
-
### Key Insight
|
|
837
|
-
|
|
838
|
-
The "workspace" question is really two separate questions:
|
|
839
|
-
1. **Config/profile scope** → Solved with global + project (no workspace needed)
|
|
840
|
-
2. **Plan vs. execution organization** → Direction set: initiatives coordinate, repo-local changes implement, workspace remains a coordination layer
|
|
841
|
-
|
|
842
|
-
These should be separate changes with separate explorations.
|
|
843
|
-
|
|
844
|
-
---
|
|
845
|
-
|
|
846
|
-
## References
|
|
847
|
-
|
|
848
|
-
- [VSCode Settings Precedence](https://code.visualstudio.com/docs/configure/settings)
|
|
849
|
-
- [ESLint Flat Config in Monorepos Discussion](https://github.com/eslint/eslint/discussions/16960)
|
|
850
|
-
- [Turborepo Package Configurations](https://turborepo.dev/docs/reference/package-configurations)
|
|
851
|
-
- [pnpm Workspaces](https://pnpm.io/workspaces)
|
|
852
|
-
- [Claude Code Settings](https://code.claude.com/docs/en/settings)
|
|
853
|
-
- [Kiro Multi-Root Workspaces](https://kiro.dev/docs/editor/multi-root-workspaces/)
|
|
854
|
-
- [DDD Bounded Context](https://martinfowler.com/bliki/BoundedContext.html)
|
|
855
|
-
- [Protobuf Monorepo Patterns](https://www.lesswrong.com/posts/xts8dC3NeTHwqYgCG/keep-your-protos-in-one-repo)
|
|
856
|
-
- [Booking.com Multi-Platform Design System](https://booking.design/how-we-built-our-multi-platform-design-system-at-booking-com-d7b895399d40)
|
|
857
|
-
- [InnerSource RFC Patterns](https://patterns.innersourcecommons.org/p/transparent-cross-team-decision-making-using-rfcs)
|