cc-agentic-framework 1.14.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/README.md +686 -0
- package/bin/agentic-framework +2 -0
- package/bin/mcp-server +14 -0
- package/dist/__mocks__/chalk.d.ts +11 -0
- package/dist/__mocks__/chalk.d.ts.map +1 -0
- package/dist/__mocks__/chalk.js +20 -0
- package/dist/__mocks__/chalk.js.map +1 -0
- package/dist/__mocks__/ora.d.ts +20 -0
- package/dist/__mocks__/ora.d.ts.map +1 -0
- package/dist/__mocks__/ora.js +52 -0
- package/dist/__mocks__/ora.js.map +1 -0
- package/dist/commands/add.d.ts +6 -0
- package/dist/commands/add.d.ts.map +1 -0
- package/dist/commands/add.js +105 -0
- package/dist/commands/add.js.map +1 -0
- package/dist/commands/agent/index.d.ts +11 -0
- package/dist/commands/agent/index.d.ts.map +1 -0
- package/dist/commands/agent/index.js +22 -0
- package/dist/commands/agent/index.js.map +1 -0
- package/dist/commands/agent/list.d.ts +8 -0
- package/dist/commands/agent/list.d.ts.map +1 -0
- package/dist/commands/agent/list.js +53 -0
- package/dist/commands/agent/list.js.map +1 -0
- package/dist/commands/agent/run.d.ts +9 -0
- package/dist/commands/agent/run.d.ts.map +1 -0
- package/dist/commands/agent/run.js +180 -0
- package/dist/commands/agent/run.js.map +1 -0
- package/dist/commands/agent/show.d.ts +8 -0
- package/dist/commands/agent/show.d.ts.map +1 -0
- package/dist/commands/agent/show.js +109 -0
- package/dist/commands/agent/show.js.map +1 -0
- package/dist/commands/backlog/create-ticket.d.ts +19 -0
- package/dist/commands/backlog/create-ticket.d.ts.map +1 -0
- package/dist/commands/backlog/create-ticket.js +168 -0
- package/dist/commands/backlog/create-ticket.js.map +1 -0
- package/dist/commands/backlog/import-jira.d.ts +32 -0
- package/dist/commands/backlog/import-jira.d.ts.map +1 -0
- package/dist/commands/backlog/import-jira.js +126 -0
- package/dist/commands/backlog/import-jira.js.map +1 -0
- package/dist/commands/backlog/migrate-milestones.d.ts +21 -0
- package/dist/commands/backlog/migrate-milestones.d.ts.map +1 -0
- package/dist/commands/backlog/migrate-milestones.js +155 -0
- package/dist/commands/backlog/migrate-milestones.js.map +1 -0
- package/dist/commands/backlog/update-fields.d.ts +36 -0
- package/dist/commands/backlog/update-fields.d.ts.map +1 -0
- package/dist/commands/backlog/update-fields.js +251 -0
- package/dist/commands/backlog/update-fields.js.map +1 -0
- package/dist/commands/backlog/validate-enhanced.d.ts +19 -0
- package/dist/commands/backlog/validate-enhanced.d.ts.map +1 -0
- package/dist/commands/backlog/validate-enhanced.js +282 -0
- package/dist/commands/backlog/validate-enhanced.js.map +1 -0
- package/dist/commands/backlog/validate.d.ts +19 -0
- package/dist/commands/backlog/validate.d.ts.map +1 -0
- package/dist/commands/backlog/validate.js +283 -0
- package/dist/commands/backlog/validate.js.map +1 -0
- package/dist/commands/build.d.ts +20 -0
- package/dist/commands/build.d.ts.map +1 -0
- package/dist/commands/build.js +116 -0
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/bump-version.d.ts +61 -0
- package/dist/commands/bump-version.d.ts.map +1 -0
- package/dist/commands/bump-version.js +618 -0
- package/dist/commands/bump-version.js.map +1 -0
- package/dist/commands/confluence/create-page.d.ts +11 -0
- package/dist/commands/confluence/create-page.d.ts.map +1 -0
- package/dist/commands/confluence/create-page.js +72 -0
- package/dist/commands/confluence/create-page.js.map +1 -0
- package/dist/commands/confluence/fetch-page.d.ts +11 -0
- package/dist/commands/confluence/fetch-page.d.ts.map +1 -0
- package/dist/commands/confluence/fetch-page.js +64 -0
- package/dist/commands/confluence/fetch-page.js.map +1 -0
- package/dist/commands/confluence/import-reports.d.ts +12 -0
- package/dist/commands/confluence/import-reports.d.ts.map +1 -0
- package/dist/commands/confluence/import-reports.js +68 -0
- package/dist/commands/confluence/import-reports.js.map +1 -0
- package/dist/commands/confluence/validate.d.ts +23 -0
- package/dist/commands/confluence/validate.d.ts.map +1 -0
- package/dist/commands/confluence/validate.js +272 -0
- package/dist/commands/confluence/validate.js.map +1 -0
- package/dist/commands/create-agent.d.ts +8 -0
- package/dist/commands/create-agent.d.ts.map +1 -0
- package/dist/commands/create-agent.js +104 -0
- package/dist/commands/create-agent.js.map +1 -0
- package/dist/commands/create-module.d.ts +8 -0
- package/dist/commands/create-module.d.ts.map +1 -0
- package/dist/commands/create-module.js +123 -0
- package/dist/commands/create-module.js.map +1 -0
- package/dist/commands/create-skill.d.ts +8 -0
- package/dist/commands/create-skill.d.ts.map +1 -0
- package/dist/commands/create-skill.js +108 -0
- package/dist/commands/create-skill.js.map +1 -0
- package/dist/commands/dev.d.ts +21 -0
- package/dist/commands/dev.d.ts.map +1 -0
- package/dist/commands/dev.js +304 -0
- package/dist/commands/dev.js.map +1 -0
- package/dist/commands/generate-agents.d.ts +19 -0
- package/dist/commands/generate-agents.d.ts.map +1 -0
- package/dist/commands/generate-agents.js +146 -0
- package/dist/commands/generate-agents.js.map +1 -0
- package/dist/commands/generate-commands.d.ts +13 -0
- package/dist/commands/generate-commands.d.ts.map +1 -0
- package/dist/commands/generate-commands.js +229 -0
- package/dist/commands/generate-commands.js.map +1 -0
- package/dist/commands/info.d.ts +2 -0
- package/dist/commands/info.d.ts.map +1 -0
- package/dist/commands/info.js +83 -0
- package/dist/commands/info.js.map +1 -0
- package/dist/commands/init.d.ts +27 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +740 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/jira/export.d.ts +19 -0
- package/dist/commands/jira/export.d.ts.map +1 -0
- package/dist/commands/jira/export.js +212 -0
- package/dist/commands/jira/export.js.map +1 -0
- package/dist/commands/jira/sync.d.ts +20 -0
- package/dist/commands/jira/sync.d.ts.map +1 -0
- package/dist/commands/jira/sync.js +242 -0
- package/dist/commands/jira/sync.js.map +1 -0
- package/dist/commands/list.d.ts +6 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +51 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/mcp/check.d.ts +11 -0
- package/dist/commands/mcp/check.d.ts.map +1 -0
- package/dist/commands/mcp/check.js +71 -0
- package/dist/commands/mcp/check.js.map +1 -0
- package/dist/commands/mcp/index.d.ts +15 -0
- package/dist/commands/mcp/index.d.ts.map +1 -0
- package/dist/commands/mcp/index.js +28 -0
- package/dist/commands/mcp/index.js.map +1 -0
- package/dist/commands/mcp/seed.d.ts +11 -0
- package/dist/commands/mcp/seed.d.ts.map +1 -0
- package/dist/commands/mcp/seed.js +222 -0
- package/dist/commands/mcp/seed.js.map +1 -0
- package/dist/commands/mcp/setup.d.ts +13 -0
- package/dist/commands/mcp/setup.d.ts.map +1 -0
- package/dist/commands/mcp/setup.js +387 -0
- package/dist/commands/mcp/setup.js.map +1 -0
- package/dist/commands/mcp/status.d.ts +11 -0
- package/dist/commands/mcp/status.d.ts.map +1 -0
- package/dist/commands/mcp/status.js +126 -0
- package/dist/commands/mcp/status.js.map +1 -0
- package/dist/commands/openclaw/export.d.ts +9 -0
- package/dist/commands/openclaw/export.d.ts.map +1 -0
- package/dist/commands/openclaw/export.js +72 -0
- package/dist/commands/openclaw/export.js.map +1 -0
- package/dist/commands/openclaw/index.d.ts +6 -0
- package/dist/commands/openclaw/index.d.ts.map +1 -0
- package/dist/commands/openclaw/index.js +11 -0
- package/dist/commands/openclaw/index.js.map +1 -0
- package/dist/commands/planning/create-plan.d.ts +21 -0
- package/dist/commands/planning/create-plan.d.ts.map +1 -0
- package/dist/commands/planning/create-plan.js +74 -0
- package/dist/commands/planning/create-plan.js.map +1 -0
- package/dist/commands/planning/validate-plan.d.ts +19 -0
- package/dist/commands/planning/validate-plan.d.ts.map +1 -0
- package/dist/commands/planning/validate-plan.js +276 -0
- package/dist/commands/planning/validate-plan.js.map +1 -0
- package/dist/commands/remove.d.ts +8 -0
- package/dist/commands/remove.d.ts.map +1 -0
- package/dist/commands/remove.js +157 -0
- package/dist/commands/remove.js.map +1 -0
- package/dist/commands/routes.d.ts +16 -0
- package/dist/commands/routes.d.ts.map +1 -0
- package/dist/commands/routes.js +153 -0
- package/dist/commands/routes.js.map +1 -0
- package/dist/commands/skill/deploy.d.ts +12 -0
- package/dist/commands/skill/deploy.d.ts.map +1 -0
- package/dist/commands/skill/deploy.js +327 -0
- package/dist/commands/skill/deploy.js.map +1 -0
- package/dist/commands/skill/index.d.ts +6 -0
- package/dist/commands/skill/index.d.ts.map +1 -0
- package/dist/commands/skill/index.js +20 -0
- package/dist/commands/skill/index.js.map +1 -0
- package/dist/commands/skill/info.d.ts +11 -0
- package/dist/commands/skill/info.d.ts.map +1 -0
- package/dist/commands/skill/info.js +260 -0
- package/dist/commands/skill/info.js.map +1 -0
- package/dist/commands/skill/list.d.ts +11 -0
- package/dist/commands/skill/list.d.ts.map +1 -0
- package/dist/commands/skill/list.js +242 -0
- package/dist/commands/skill/list.js.map +1 -0
- package/dist/commands/skill/pull.d.ts +12 -0
- package/dist/commands/skill/pull.d.ts.map +1 -0
- package/dist/commands/skill/pull.js +133 -0
- package/dist/commands/skill/pull.js.map +1 -0
- package/dist/commands/skill/remove.d.ts +12 -0
- package/dist/commands/skill/remove.d.ts.map +1 -0
- package/dist/commands/skill/remove.js +99 -0
- package/dist/commands/skill/remove.js.map +1 -0
- package/dist/commands/status.d.ts +11 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +195 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/sync.d.ts +20 -0
- package/dist/commands/sync.d.ts.map +1 -0
- package/dist/commands/sync.js +517 -0
- package/dist/commands/sync.js.map +1 -0
- package/dist/commands/template/index.d.ts +12 -0
- package/dist/commands/template/index.d.ts.map +1 -0
- package/dist/commands/template/index.js +24 -0
- package/dist/commands/template/index.js.map +1 -0
- package/dist/commands/template/info.d.ts +8 -0
- package/dist/commands/template/info.d.ts.map +1 -0
- package/dist/commands/template/info.js +125 -0
- package/dist/commands/template/info.js.map +1 -0
- package/dist/commands/template/list.d.ts +8 -0
- package/dist/commands/template/list.d.ts.map +1 -0
- package/dist/commands/template/list.js +77 -0
- package/dist/commands/template/list.js.map +1 -0
- package/dist/commands/template/render.d.ts +8 -0
- package/dist/commands/template/render.d.ts.map +1 -0
- package/dist/commands/template/render.js +115 -0
- package/dist/commands/template/render.js.map +1 -0
- package/dist/commands/template/validate.d.ts +8 -0
- package/dist/commands/template/validate.d.ts.map +1 -0
- package/dist/commands/template/validate.js +137 -0
- package/dist/commands/template/validate.js.map +1 -0
- package/dist/commands/test.d.ts +40 -0
- package/dist/commands/test.d.ts.map +1 -0
- package/dist/commands/test.js +240 -0
- package/dist/commands/test.js.map +1 -0
- package/dist/commands/update.d.ts +12 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +248 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/validate.d.ts +12 -0
- package/dist/commands/validate.d.ts.map +1 -0
- package/dist/commands/validate.js +355 -0
- package/dist/commands/validate.js.map +1 -0
- package/dist/commands/writer/analyze.d.ts +19 -0
- package/dist/commands/writer/analyze.d.ts.map +1 -0
- package/dist/commands/writer/analyze.js +210 -0
- package/dist/commands/writer/analyze.js.map +1 -0
- package/dist/commands/writer/build.d.ts +21 -0
- package/dist/commands/writer/build.d.ts.map +1 -0
- package/dist/commands/writer/build.js +241 -0
- package/dist/commands/writer/build.js.map +1 -0
- package/dist/commands/writer/create-chapter.d.ts +19 -0
- package/dist/commands/writer/create-chapter.d.ts.map +1 -0
- package/dist/commands/writer/create-chapter.js +260 -0
- package/dist/commands/writer/create-chapter.js.map +1 -0
- package/dist/commands/writer/create-character.d.ts +19 -0
- package/dist/commands/writer/create-character.d.ts.map +1 -0
- package/dist/commands/writer/create-character.js +263 -0
- package/dist/commands/writer/create-character.js.map +1 -0
- package/dist/commands/writer/create-part.d.ts +19 -0
- package/dist/commands/writer/create-part.d.ts.map +1 -0
- package/dist/commands/writer/create-part.js +239 -0
- package/dist/commands/writer/create-part.js.map +1 -0
- package/dist/commands/writer/create-scene.d.ts +19 -0
- package/dist/commands/writer/create-scene.d.ts.map +1 -0
- package/dist/commands/writer/create-scene.js +286 -0
- package/dist/commands/writer/create-scene.js.map +1 -0
- package/dist/commands/writer/export.d.ts +21 -0
- package/dist/commands/writer/export.d.ts.map +1 -0
- package/dist/commands/writer/export.js +230 -0
- package/dist/commands/writer/export.js.map +1 -0
- package/dist/commands/writer/init.d.ts +19 -0
- package/dist/commands/writer/init.d.ts.map +1 -0
- package/dist/commands/writer/init.js +227 -0
- package/dist/commands/writer/init.js.map +1 -0
- package/dist/commands/writer/lib/immutability-utils.d.ts +82 -0
- package/dist/commands/writer/lib/immutability-utils.d.ts.map +1 -0
- package/dist/commands/writer/lib/immutability-utils.js +253 -0
- package/dist/commands/writer/lib/immutability-utils.js.map +1 -0
- package/dist/commands/writer/lib/lock-utils.d.ts +48 -0
- package/dist/commands/writer/lib/lock-utils.d.ts.map +1 -0
- package/dist/commands/writer/lib/lock-utils.js +122 -0
- package/dist/commands/writer/lib/lock-utils.js.map +1 -0
- package/dist/commands/writer/lock-fact.d.ts +20 -0
- package/dist/commands/writer/lock-fact.d.ts.map +1 -0
- package/dist/commands/writer/lock-fact.js +174 -0
- package/dist/commands/writer/lock-fact.js.map +1 -0
- package/dist/commands/writer/unlock-fact.d.ts +20 -0
- package/dist/commands/writer/unlock-fact.d.ts.map +1 -0
- package/dist/commands/writer/unlock-fact.js +160 -0
- package/dist/commands/writer/unlock-fact.js.map +1 -0
- package/dist/commands/writer/validate-immutability.d.ts +19 -0
- package/dist/commands/writer/validate-immutability.d.ts.map +1 -0
- package/dist/commands/writer/validate-immutability.js +148 -0
- package/dist/commands/writer/validate-immutability.js.map +1 -0
- package/dist/commands/writer/validate.d.ts +20 -0
- package/dist/commands/writer/validate.d.ts.map +1 -0
- package/dist/commands/writer/validate.js +370 -0
- package/dist/commands/writer/validate.js.map +1 -0
- package/dist/hooks/claude-folder-protection.d.ts +23 -0
- package/dist/hooks/claude-folder-protection.d.ts.map +1 -0
- package/dist/hooks/claude-folder-protection.js +98 -0
- package/dist/hooks/claude-folder-protection.js.map +1 -0
- package/dist/hooks/index.d.ts +24 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +24 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/post-write-validate.d.ts +14 -0
- package/dist/hooks/post-write-validate.d.ts.map +1 -0
- package/dist/hooks/post-write-validate.js +142 -0
- package/dist/hooks/post-write-validate.js.map +1 -0
- package/dist/hooks/pre-commit-skill-reminder.d.ts +21 -0
- package/dist/hooks/pre-commit-skill-reminder.d.ts.map +1 -0
- package/dist/hooks/pre-commit-skill-reminder.js +142 -0
- package/dist/hooks/pre-commit-skill-reminder.js.map +1 -0
- package/dist/hooks/pre-write-quality.d.ts +14 -0
- package/dist/hooks/pre-write-quality.d.ts.map +1 -0
- package/dist/hooks/pre-write-quality.js +114 -0
- package/dist/hooks/pre-write-quality.js.map +1 -0
- package/dist/hooks/skill-reminder.d.ts +22 -0
- package/dist/hooks/skill-reminder.d.ts.map +1 -0
- package/dist/hooks/skill-reminder.js +285 -0
- package/dist/hooks/skill-reminder.js.map +1 -0
- package/dist/hooks/stop-quality-check.d.ts +14 -0
- package/dist/hooks/stop-quality-check.d.ts.map +1 -0
- package/dist/hooks/stop-quality-check.js +122 -0
- package/dist/hooks/stop-quality-check.js.map +1 -0
- package/dist/hooks/subagent-context-loader.d.ts +12 -0
- package/dist/hooks/subagent-context-loader.d.ts.map +1 -0
- package/dist/hooks/subagent-context-loader.js +124 -0
- package/dist/hooks/subagent-context-loader.js.map +1 -0
- package/dist/hooks/types.d.ts +89 -0
- package/dist/hooks/types.d.ts.map +1 -0
- package/dist/hooks/types.js +57 -0
- package/dist/hooks/types.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +256 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/affected-modules.d.ts +104 -0
- package/dist/lib/affected-modules.d.ts.map +1 -0
- package/dist/lib/affected-modules.js +283 -0
- package/dist/lib/affected-modules.js.map +1 -0
- package/dist/lib/agent-generator.d.ts +137 -0
- package/dist/lib/agent-generator.d.ts.map +1 -0
- package/dist/lib/agent-generator.js +274 -0
- package/dist/lib/agent-generator.js.map +1 -0
- package/dist/lib/backlog/__mocks__/prompt-utils.d.ts +5 -0
- package/dist/lib/backlog/__mocks__/prompt-utils.d.ts.map +1 -0
- package/dist/lib/backlog/__mocks__/prompt-utils.js +5 -0
- package/dist/lib/backlog/__mocks__/prompt-utils.js.map +1 -0
- package/dist/lib/backlog/content-parser.d.ts +83 -0
- package/dist/lib/backlog/content-parser.d.ts.map +1 -0
- package/dist/lib/backlog/content-parser.js +284 -0
- package/dist/lib/backlog/content-parser.js.map +1 -0
- package/dist/lib/backlog/csv-extractor.d.ts +87 -0
- package/dist/lib/backlog/csv-extractor.d.ts.map +1 -0
- package/dist/lib/backlog/csv-extractor.js +338 -0
- package/dist/lib/backlog/csv-extractor.js.map +1 -0
- package/dist/lib/backlog/epic-handler.d.ts +55 -0
- package/dist/lib/backlog/epic-handler.d.ts.map +1 -0
- package/dist/lib/backlog/epic-handler.js +222 -0
- package/dist/lib/backlog/epic-handler.js.map +1 -0
- package/dist/lib/backlog/field-updater.d.ts +195 -0
- package/dist/lib/backlog/field-updater.d.ts.map +1 -0
- package/dist/lib/backlog/field-updater.js +287 -0
- package/dist/lib/backlog/field-updater.js.map +1 -0
- package/dist/lib/backlog/import-engine.d.ts +110 -0
- package/dist/lib/backlog/import-engine.d.ts.map +1 -0
- package/dist/lib/backlog/import-engine.js +241 -0
- package/dist/lib/backlog/import-engine.js.map +1 -0
- package/dist/lib/backlog/import-strategies.d.ts +110 -0
- package/dist/lib/backlog/import-strategies.d.ts.map +1 -0
- package/dist/lib/backlog/import-strategies.js +398 -0
- package/dist/lib/backlog/import-strategies.js.map +1 -0
- package/dist/lib/backlog/jira-file-generators.d.ts +154 -0
- package/dist/lib/backlog/jira-file-generators.d.ts.map +1 -0
- package/dist/lib/backlog/jira-file-generators.js +265 -0
- package/dist/lib/backlog/jira-file-generators.js.map +1 -0
- package/dist/lib/backlog/jira-import-workflows.d.ts +112 -0
- package/dist/lib/backlog/jira-import-workflows.d.ts.map +1 -0
- package/dist/lib/backlog/jira-import-workflows.js +339 -0
- package/dist/lib/backlog/jira-import-workflows.js.map +1 -0
- package/dist/lib/backlog/jira-lookup.d.ts +121 -0
- package/dist/lib/backlog/jira-lookup.d.ts.map +1 -0
- package/dist/lib/backlog/jira-lookup.js +232 -0
- package/dist/lib/backlog/jira-lookup.js.map +1 -0
- package/dist/lib/backlog/jira-prompts.d.ts +66 -0
- package/dist/lib/backlog/jira-prompts.d.ts.map +1 -0
- package/dist/lib/backlog/jira-prompts.js +232 -0
- package/dist/lib/backlog/jira-prompts.js.map +1 -0
- package/dist/lib/backlog/jira-validators.d.ts +123 -0
- package/dist/lib/backlog/jira-validators.d.ts.map +1 -0
- package/dist/lib/backlog/jira-validators.js +394 -0
- package/dist/lib/backlog/jira-validators.js.map +1 -0
- package/dist/lib/backlog/milestone-generator.d.ts +172 -0
- package/dist/lib/backlog/milestone-generator.d.ts.map +1 -0
- package/dist/lib/backlog/milestone-generator.js +378 -0
- package/dist/lib/backlog/milestone-generator.js.map +1 -0
- package/dist/lib/backlog/milestone-migrator.d.ts +174 -0
- package/dist/lib/backlog/milestone-migrator.d.ts.map +1 -0
- package/dist/lib/backlog/milestone-migrator.js +401 -0
- package/dist/lib/backlog/milestone-migrator.js.map +1 -0
- package/dist/lib/backlog/milestone-sanitizer.d.ts +72 -0
- package/dist/lib/backlog/milestone-sanitizer.d.ts.map +1 -0
- package/dist/lib/backlog/milestone-sanitizer.js +139 -0
- package/dist/lib/backlog/milestone-sanitizer.js.map +1 -0
- package/dist/lib/backlog/prompt-utils.d.ts +9 -0
- package/dist/lib/backlog/prompt-utils.d.ts.map +1 -0
- package/dist/lib/backlog/prompt-utils.js +11 -0
- package/dist/lib/backlog/prompt-utils.js.map +1 -0
- package/dist/lib/backlog/sprint-creator.d.ts +145 -0
- package/dist/lib/backlog/sprint-creator.d.ts.map +1 -0
- package/dist/lib/backlog/sprint-creator.js +295 -0
- package/dist/lib/backlog/sprint-creator.js.map +1 -0
- package/dist/lib/backlog/ticket-generator.d.ts +79 -0
- package/dist/lib/backlog/ticket-generator.d.ts.map +1 -0
- package/dist/lib/backlog/ticket-generator.js +281 -0
- package/dist/lib/backlog/ticket-generator.js.map +1 -0
- package/dist/lib/backlog/ticket-processor.d.ts +205 -0
- package/dist/lib/backlog/ticket-processor.d.ts.map +1 -0
- package/dist/lib/backlog/ticket-processor.js +422 -0
- package/dist/lib/backlog/ticket-processor.js.map +1 -0
- package/dist/lib/backlog/types.d.ts +37 -0
- package/dist/lib/backlog/types.d.ts.map +1 -0
- package/dist/lib/backlog/types.js +7 -0
- package/dist/lib/backlog/types.js.map +1 -0
- package/dist/lib/backlog/validator.d.ts +61 -0
- package/dist/lib/backlog/validator.d.ts.map +1 -0
- package/dist/lib/backlog/validator.js +285 -0
- package/dist/lib/backlog/validator.js.map +1 -0
- package/dist/lib/boundary-validator.d.ts +88 -0
- package/dist/lib/boundary-validator.d.ts.map +1 -0
- package/dist/lib/boundary-validator.js +494 -0
- package/dist/lib/boundary-validator.js.map +1 -0
- package/dist/lib/build/build-engine.d.ts +142 -0
- package/dist/lib/build/build-engine.d.ts.map +1 -0
- package/dist/lib/build/build-engine.js +487 -0
- package/dist/lib/build/build-engine.js.map +1 -0
- package/dist/lib/build/index.d.ts +7 -0
- package/dist/lib/build/index.d.ts.map +1 -0
- package/dist/lib/build/index.js +7 -0
- package/dist/lib/build/index.js.map +1 -0
- package/dist/lib/cleanup-engine.d.ts +121 -0
- package/dist/lib/cleanup-engine.d.ts.map +1 -0
- package/dist/lib/cleanup-engine.js +252 -0
- package/dist/lib/cleanup-engine.js.map +1 -0
- package/dist/lib/cli-context.d.ts +283 -0
- package/dist/lib/cli-context.d.ts.map +1 -0
- package/dist/lib/cli-context.js +403 -0
- package/dist/lib/cli-context.js.map +1 -0
- package/dist/lib/cli-version.d.ts +7 -0
- package/dist/lib/cli-version.d.ts.map +1 -0
- package/dist/lib/cli-version.js +30 -0
- package/dist/lib/cli-version.js.map +1 -0
- package/dist/lib/command-factory.d.ts +76 -0
- package/dist/lib/command-factory.d.ts.map +1 -0
- package/dist/lib/command-factory.js +166 -0
- package/dist/lib/command-factory.js.map +1 -0
- package/dist/lib/common/api-client.d.ts +92 -0
- package/dist/lib/common/api-client.d.ts.map +1 -0
- package/dist/lib/common/api-client.js +206 -0
- package/dist/lib/common/api-client.js.map +1 -0
- package/dist/lib/common/file-utils.d.ts +92 -0
- package/dist/lib/common/file-utils.d.ts.map +1 -0
- package/dist/lib/common/file-utils.js +143 -0
- package/dist/lib/common/file-utils.js.map +1 -0
- package/dist/lib/common/validation.d.ts +91 -0
- package/dist/lib/common/validation.d.ts.map +1 -0
- package/dist/lib/common/validation.js +213 -0
- package/dist/lib/common/validation.js.map +1 -0
- package/dist/lib/common/yaml-frontmatter.d.ts +76 -0
- package/dist/lib/common/yaml-frontmatter.d.ts.map +1 -0
- package/dist/lib/common/yaml-frontmatter.js +89 -0
- package/dist/lib/common/yaml-frontmatter.js.map +1 -0
- package/dist/lib/confluence/adf-converter.d.ts +30 -0
- package/dist/lib/confluence/adf-converter.d.ts.map +1 -0
- package/dist/lib/confluence/adf-converter.js +649 -0
- package/dist/lib/confluence/adf-converter.js.map +1 -0
- package/dist/lib/confluence/confluence-client.d.ts +121 -0
- package/dist/lib/confluence/confluence-client.d.ts.map +1 -0
- package/dist/lib/confluence/confluence-client.js +249 -0
- package/dist/lib/confluence/confluence-client.js.map +1 -0
- package/dist/lib/confluence/confluence-commands.d.ts +58 -0
- package/dist/lib/confluence/confluence-commands.d.ts.map +1 -0
- package/dist/lib/confluence/confluence-commands.js +231 -0
- package/dist/lib/confluence/confluence-commands.js.map +1 -0
- package/dist/lib/discovery-engine.d.ts +159 -0
- package/dist/lib/discovery-engine.d.ts.map +1 -0
- package/dist/lib/discovery-engine.js +538 -0
- package/dist/lib/discovery-engine.js.map +1 -0
- package/dist/lib/framework-validator.d.ts +81 -0
- package/dist/lib/framework-validator.d.ts.map +1 -0
- package/dist/lib/framework-validator.js +546 -0
- package/dist/lib/framework-validator.js.map +1 -0
- package/dist/lib/global-skills-manager.d.ts +90 -0
- package/dist/lib/global-skills-manager.d.ts.map +1 -0
- package/dist/lib/global-skills-manager.js +180 -0
- package/dist/lib/global-skills-manager.js.map +1 -0
- package/dist/lib/jira/acceptance-criteria.d.ts +76 -0
- package/dist/lib/jira/acceptance-criteria.d.ts.map +1 -0
- package/dist/lib/jira/acceptance-criteria.js +163 -0
- package/dist/lib/jira/acceptance-criteria.js.map +1 -0
- package/dist/lib/jira/export-engine.d.ts +132 -0
- package/dist/lib/jira/export-engine.d.ts.map +1 -0
- package/dist/lib/jira/export-engine.js +332 -0
- package/dist/lib/jira/export-engine.js.map +1 -0
- package/dist/lib/jira/field-mapper.d.ts +101 -0
- package/dist/lib/jira/field-mapper.d.ts.map +1 -0
- package/dist/lib/jira/field-mapper.js +346 -0
- package/dist/lib/jira/field-mapper.js.map +1 -0
- package/dist/lib/jira/jira-client.d.ts +117 -0
- package/dist/lib/jira/jira-client.d.ts.map +1 -0
- package/dist/lib/jira/jira-client.js +255 -0
- package/dist/lib/jira/jira-client.js.map +1 -0
- package/dist/lib/jira/sync-engine.d.ts +154 -0
- package/dist/lib/jira/sync-engine.d.ts.map +1 -0
- package/dist/lib/jira/sync-engine.js +420 -0
- package/dist/lib/jira/sync-engine.js.map +1 -0
- package/dist/lib/jira/wiki-converter.d.ts +133 -0
- package/dist/lib/jira/wiki-converter.d.ts.map +1 -0
- package/dist/lib/jira/wiki-converter.js +245 -0
- package/dist/lib/jira/wiki-converter.js.map +1 -0
- package/dist/lib/link-transformer.d.ts +176 -0
- package/dist/lib/link-transformer.d.ts.map +1 -0
- package/dist/lib/link-transformer.js +349 -0
- package/dist/lib/link-transformer.js.map +1 -0
- package/dist/lib/link-validator.d.ts +232 -0
- package/dist/lib/link-validator.d.ts.map +1 -0
- package/dist/lib/link-validator.js +504 -0
- package/dist/lib/link-validator.js.map +1 -0
- package/dist/lib/manifest-manager.d.ts +112 -0
- package/dist/lib/manifest-manager.d.ts.map +1 -0
- package/dist/lib/manifest-manager.js +153 -0
- package/dist/lib/manifest-manager.js.map +1 -0
- package/dist/lib/mcp/extractors/framework-project.d.ts +29 -0
- package/dist/lib/mcp/extractors/framework-project.d.ts.map +1 -0
- package/dist/lib/mcp/extractors/framework-project.js +402 -0
- package/dist/lib/mcp/extractors/framework-project.js.map +1 -0
- package/dist/lib/mcp/extractors/generic-project.d.ts +25 -0
- package/dist/lib/mcp/extractors/generic-project.d.ts.map +1 -0
- package/dist/lib/mcp/extractors/generic-project.js +344 -0
- package/dist/lib/mcp/extractors/generic-project.js.map +1 -0
- package/dist/lib/mcp/extractors/index.d.ts +48 -0
- package/dist/lib/mcp/extractors/index.d.ts.map +1 -0
- package/dist/lib/mcp/extractors/index.js +28 -0
- package/dist/lib/mcp/extractors/index.js.map +1 -0
- package/dist/lib/mcp/index.d.ts +11 -0
- package/dist/lib/mcp/index.d.ts.map +1 -0
- package/dist/lib/mcp/index.js +11 -0
- package/dist/lib/mcp/index.js.map +1 -0
- package/dist/lib/mcp/install-instructions.d.ts +39 -0
- package/dist/lib/mcp/install-instructions.d.ts.map +1 -0
- package/dist/lib/mcp/install-instructions.js +317 -0
- package/dist/lib/mcp/install-instructions.js.map +1 -0
- package/dist/lib/mcp/prerequisite-checker.d.ts +79 -0
- package/dist/lib/mcp/prerequisite-checker.d.ts.map +1 -0
- package/dist/lib/mcp/prerequisite-checker.js +213 -0
- package/dist/lib/mcp/prerequisite-checker.js.map +1 -0
- package/dist/lib/module-loader.d.ts +77 -0
- package/dist/lib/module-loader.d.ts.map +1 -0
- package/dist/lib/module-loader.js +135 -0
- package/dist/lib/module-loader.js.map +1 -0
- package/dist/lib/path-resolver.d.ts +160 -0
- package/dist/lib/path-resolver.d.ts.map +1 -0
- package/dist/lib/path-resolver.js +205 -0
- package/dist/lib/path-resolver.js.map +1 -0
- package/dist/lib/planning/plan-creator.d.ts +132 -0
- package/dist/lib/planning/plan-creator.d.ts.map +1 -0
- package/dist/lib/planning/plan-creator.js +361 -0
- package/dist/lib/planning/plan-creator.js.map +1 -0
- package/dist/lib/project-resolver.d.ts +124 -0
- package/dist/lib/project-resolver.d.ts.map +1 -0
- package/dist/lib/project-resolver.js +362 -0
- package/dist/lib/project-resolver.js.map +1 -0
- package/dist/lib/registry-generator.d.ts +11 -0
- package/dist/lib/registry-generator.d.ts.map +1 -0
- package/dist/lib/registry-generator.js +288 -0
- package/dist/lib/registry-generator.js.map +1 -0
- package/dist/lib/routes-validator.d.ts +50 -0
- package/dist/lib/routes-validator.d.ts.map +1 -0
- package/dist/lib/routes-validator.js +260 -0
- package/dist/lib/routes-validator.js.map +1 -0
- package/dist/lib/schemas/agent.schema.d.ts +175 -0
- package/dist/lib/schemas/agent.schema.d.ts.map +1 -0
- package/dist/lib/schemas/agent.schema.js +86 -0
- package/dist/lib/schemas/agent.schema.js.map +1 -0
- package/dist/lib/schemas/index.d.ts +13 -0
- package/dist/lib/schemas/index.d.ts.map +1 -0
- package/dist/lib/schemas/index.js +13 -0
- package/dist/lib/schemas/index.js.map +1 -0
- package/dist/lib/schemas/skill.schema.d.ts +92 -0
- package/dist/lib/schemas/skill.schema.d.ts.map +1 -0
- package/dist/lib/schemas/skill.schema.js +98 -0
- package/dist/lib/schemas/skill.schema.js.map +1 -0
- package/dist/lib/sdk/executor.d.ts +37 -0
- package/dist/lib/sdk/executor.d.ts.map +1 -0
- package/dist/lib/sdk/executor.js +137 -0
- package/dist/lib/sdk/executor.js.map +1 -0
- package/dist/lib/sdk/generator.d.ts +79 -0
- package/dist/lib/sdk/generator.d.ts.map +1 -0
- package/dist/lib/sdk/generator.js +316 -0
- package/dist/lib/sdk/generator.js.map +1 -0
- package/dist/lib/sdk/index.d.ts +12 -0
- package/dist/lib/sdk/index.d.ts.map +1 -0
- package/dist/lib/sdk/index.js +15 -0
- package/dist/lib/sdk/index.js.map +1 -0
- package/dist/lib/sdk/message-handler.d.ts +40 -0
- package/dist/lib/sdk/message-handler.d.ts.map +1 -0
- package/dist/lib/sdk/message-handler.js +215 -0
- package/dist/lib/sdk/message-handler.js.map +1 -0
- package/dist/lib/sdk/sub-agents.d.ts +51 -0
- package/dist/lib/sdk/sub-agents.d.ts.map +1 -0
- package/dist/lib/sdk/sub-agents.js +234 -0
- package/dist/lib/sdk/sub-agents.js.map +1 -0
- package/dist/lib/sdk/types.d.ts +169 -0
- package/dist/lib/sdk/types.d.ts.map +1 -0
- package/dist/lib/sdk/types.js +7 -0
- package/dist/lib/sdk/types.js.map +1 -0
- package/dist/lib/skill-cli-parser.d.ts +79 -0
- package/dist/lib/skill-cli-parser.d.ts.map +1 -0
- package/dist/lib/skill-cli-parser.js +172 -0
- package/dist/lib/skill-cli-parser.js.map +1 -0
- package/dist/lib/skill-template-engine.d.ts +116 -0
- package/dist/lib/skill-template-engine.d.ts.map +1 -0
- package/dist/lib/skill-template-engine.js +220 -0
- package/dist/lib/skill-template-engine.js.map +1 -0
- package/dist/lib/sync-engine.d.ts +344 -0
- package/dist/lib/sync-engine.d.ts.map +1 -0
- package/dist/lib/sync-engine.js +1255 -0
- package/dist/lib/sync-engine.js.map +1 -0
- package/dist/lib/telemetry/config.d.ts +22 -0
- package/dist/lib/telemetry/config.d.ts.map +1 -0
- package/dist/lib/telemetry/config.js +210 -0
- package/dist/lib/telemetry/config.js.map +1 -0
- package/dist/lib/telemetry/exporters/console-exporter.d.ts +72 -0
- package/dist/lib/telemetry/exporters/console-exporter.d.ts.map +1 -0
- package/dist/lib/telemetry/exporters/console-exporter.js +228 -0
- package/dist/lib/telemetry/exporters/console-exporter.js.map +1 -0
- package/dist/lib/telemetry/exporters/json-file-exporter.d.ts +48 -0
- package/dist/lib/telemetry/exporters/json-file-exporter.d.ts.map +1 -0
- package/dist/lib/telemetry/exporters/json-file-exporter.js +202 -0
- package/dist/lib/telemetry/exporters/json-file-exporter.js.map +1 -0
- package/dist/lib/telemetry/exporters/otel-exporter.d.ts +48 -0
- package/dist/lib/telemetry/exporters/otel-exporter.d.ts.map +1 -0
- package/dist/lib/telemetry/exporters/otel-exporter.js +299 -0
- package/dist/lib/telemetry/exporters/otel-exporter.js.map +1 -0
- package/dist/lib/telemetry/exporters/session-file-exporter.d.ts +66 -0
- package/dist/lib/telemetry/exporters/session-file-exporter.d.ts.map +1 -0
- package/dist/lib/telemetry/exporters/session-file-exporter.js +223 -0
- package/dist/lib/telemetry/exporters/session-file-exporter.js.map +1 -0
- package/dist/lib/telemetry/index.d.ts +44 -0
- package/dist/lib/telemetry/index.d.ts.map +1 -0
- package/dist/lib/telemetry/index.js +69 -0
- package/dist/lib/telemetry/index.js.map +1 -0
- package/dist/lib/telemetry/instrumentation/cli-instrumentation.d.ts +25 -0
- package/dist/lib/telemetry/instrumentation/cli-instrumentation.d.ts.map +1 -0
- package/dist/lib/telemetry/instrumentation/cli-instrumentation.js +83 -0
- package/dist/lib/telemetry/instrumentation/cli-instrumentation.js.map +1 -0
- package/dist/lib/telemetry/instrumentation/discovery-instrumentation.d.ts +21 -0
- package/dist/lib/telemetry/instrumentation/discovery-instrumentation.d.ts.map +1 -0
- package/dist/lib/telemetry/instrumentation/discovery-instrumentation.js +78 -0
- package/dist/lib/telemetry/instrumentation/discovery-instrumentation.js.map +1 -0
- package/dist/lib/telemetry/instrumentation/mcp-instrumentation.d.ts +76 -0
- package/dist/lib/telemetry/instrumentation/mcp-instrumentation.d.ts.map +1 -0
- package/dist/lib/telemetry/instrumentation/mcp-instrumentation.js +168 -0
- package/dist/lib/telemetry/instrumentation/mcp-instrumentation.js.map +1 -0
- package/dist/lib/telemetry/instrumentation/sync-instrumentation.d.ts +25 -0
- package/dist/lib/telemetry/instrumentation/sync-instrumentation.d.ts.map +1 -0
- package/dist/lib/telemetry/instrumentation/sync-instrumentation.js +51 -0
- package/dist/lib/telemetry/instrumentation/sync-instrumentation.js.map +1 -0
- package/dist/lib/telemetry/session-context.d.ts +109 -0
- package/dist/lib/telemetry/session-context.d.ts.map +1 -0
- package/dist/lib/telemetry/session-context.js +170 -0
- package/dist/lib/telemetry/session-context.js.map +1 -0
- package/dist/lib/telemetry/telemetry-manager.d.ts +88 -0
- package/dist/lib/telemetry/telemetry-manager.d.ts.map +1 -0
- package/dist/lib/telemetry/telemetry-manager.js +347 -0
- package/dist/lib/telemetry/telemetry-manager.js.map +1 -0
- package/dist/lib/telemetry/types.d.ts +302 -0
- package/dist/lib/telemetry/types.d.ts.map +1 -0
- package/dist/lib/telemetry/types.js +6 -0
- package/dist/lib/telemetry/types.js.map +1 -0
- package/dist/lib/template-engine.d.ts +5 -0
- package/dist/lib/template-engine.d.ts.map +1 -0
- package/dist/lib/template-engine.js +294 -0
- package/dist/lib/template-engine.js.map +1 -0
- package/dist/lib/unified-template-engine/computed-variables.d.ts +38 -0
- package/dist/lib/unified-template-engine/computed-variables.d.ts.map +1 -0
- package/dist/lib/unified-template-engine/computed-variables.js +85 -0
- package/dist/lib/unified-template-engine/computed-variables.js.map +1 -0
- package/dist/lib/unified-template-engine/index.d.ts +67 -0
- package/dist/lib/unified-template-engine/index.d.ts.map +1 -0
- package/dist/lib/unified-template-engine/index.js +200 -0
- package/dist/lib/unified-template-engine/index.js.map +1 -0
- package/dist/lib/unified-template-engine/resolver.d.ts +63 -0
- package/dist/lib/unified-template-engine/resolver.d.ts.map +1 -0
- package/dist/lib/unified-template-engine/resolver.js +312 -0
- package/dist/lib/unified-template-engine/resolver.js.map +1 -0
- package/dist/lib/unified-template-engine/types.d.ts +177 -0
- package/dist/lib/unified-template-engine/types.d.ts.map +1 -0
- package/dist/lib/unified-template-engine/types.js +7 -0
- package/dist/lib/unified-template-engine/types.js.map +1 -0
- package/dist/lib/unified-template-engine/validator.d.ts +23 -0
- package/dist/lib/unified-template-engine/validator.d.ts.map +1 -0
- package/dist/lib/unified-template-engine/validator.js +217 -0
- package/dist/lib/unified-template-engine/validator.js.map +1 -0
- package/dist/lib/validation/rules/plan-rules.d.ts +48 -0
- package/dist/lib/validation/rules/plan-rules.d.ts.map +1 -0
- package/dist/lib/validation/rules/plan-rules.js +152 -0
- package/dist/lib/validation/rules/plan-rules.js.map +1 -0
- package/dist/lib/validation/rules/ticket-rules.d.ts +54 -0
- package/dist/lib/validation/rules/ticket-rules.d.ts.map +1 -0
- package/dist/lib/validation/rules/ticket-rules.js +136 -0
- package/dist/lib/validation/rules/ticket-rules.js.map +1 -0
- package/dist/lib/validation/schema-validator.d.ts +26 -0
- package/dist/lib/validation/schema-validator.d.ts.map +1 -0
- package/dist/lib/validation/schema-validator.js +183 -0
- package/dist/lib/validation/schema-validator.js.map +1 -0
- package/dist/lib/validation/validation-report.d.ts +68 -0
- package/dist/lib/validation/validation-report.d.ts.map +1 -0
- package/dist/lib/validation/validation-report.js +141 -0
- package/dist/lib/validation/validation-report.js.map +1 -0
- package/dist/lib/version-validator.d.ts +89 -0
- package/dist/lib/version-validator.d.ts.map +1 -0
- package/dist/lib/version-validator.js +178 -0
- package/dist/lib/version-validator.js.map +1 -0
- package/dist/lib/wizard/detection.d.ts +48 -0
- package/dist/lib/wizard/detection.d.ts.map +1 -0
- package/dist/lib/wizard/detection.js +116 -0
- package/dist/lib/wizard/detection.js.map +1 -0
- package/dist/lib/wizard/file-handlers.d.ts +40 -0
- package/dist/lib/wizard/file-handlers.d.ts.map +1 -0
- package/dist/lib/wizard/file-handlers.js +204 -0
- package/dist/lib/wizard/file-handlers.js.map +1 -0
- package/dist/lib/wizard/index.d.ts +9 -0
- package/dist/lib/wizard/index.d.ts.map +1 -0
- package/dist/lib/wizard/index.js +9 -0
- package/dist/lib/wizard/index.js.map +1 -0
- package/dist/lib/wizard/init-wizard.d.ts +35 -0
- package/dist/lib/wizard/init-wizard.d.ts.map +1 -0
- package/dist/lib/wizard/init-wizard.js +86 -0
- package/dist/lib/wizard/init-wizard.js.map +1 -0
- package/dist/lib/wizard/module-groups.d.ts +55 -0
- package/dist/lib/wizard/module-groups.d.ts.map +1 -0
- package/dist/lib/wizard/module-groups.js +128 -0
- package/dist/lib/wizard/module-groups.js.map +1 -0
- package/dist/lib/wizard/prompts.d.ts +36 -0
- package/dist/lib/wizard/prompts.d.ts.map +1 -0
- package/dist/lib/wizard/prompts.js +253 -0
- package/dist/lib/wizard/prompts.js.map +1 -0
- package/dist/lib/wizard/summary.d.ts +45 -0
- package/dist/lib/wizard/summary.d.ts.map +1 -0
- package/dist/lib/wizard/summary.js +162 -0
- package/dist/lib/wizard/summary.js.map +1 -0
- package/dist/mcp/index.d.ts +15 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +75 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/result-formatter.d.ts +68 -0
- package/dist/mcp/result-formatter.d.ts.map +1 -0
- package/dist/mcp/result-formatter.js +191 -0
- package/dist/mcp/result-formatter.js.map +1 -0
- package/dist/mcp/tool-registry.d.ts +70 -0
- package/dist/mcp/tool-registry.d.ts.map +1 -0
- package/dist/mcp/tool-registry.js +183 -0
- package/dist/mcp/tool-registry.js.map +1 -0
- package/dist/mcp/tools/agent.d.ts +22 -0
- package/dist/mcp/tools/agent.d.ts.map +1 -0
- package/dist/mcp/tools/agent.js +267 -0
- package/dist/mcp/tools/agent.js.map +1 -0
- package/dist/mcp/tools/backlog.d.ts +15 -0
- package/dist/mcp/tools/backlog.d.ts.map +1 -0
- package/dist/mcp/tools/backlog.js +355 -0
- package/dist/mcp/tools/backlog.js.map +1 -0
- package/dist/mcp/tools/confluence.d.ts +32 -0
- package/dist/mcp/tools/confluence.d.ts.map +1 -0
- package/dist/mcp/tools/confluence.js +367 -0
- package/dist/mcp/tools/confluence.js.map +1 -0
- package/dist/mcp/tools/create.d.ts +22 -0
- package/dist/mcp/tools/create.d.ts.map +1 -0
- package/dist/mcp/tools/create.js +311 -0
- package/dist/mcp/tools/create.js.map +1 -0
- package/dist/mcp/tools/framework.d.ts +24 -0
- package/dist/mcp/tools/framework.d.ts.map +1 -0
- package/dist/mcp/tools/framework.js +430 -0
- package/dist/mcp/tools/framework.js.map +1 -0
- package/dist/mcp/tools/index.d.ts +32 -0
- package/dist/mcp/tools/index.d.ts.map +1 -0
- package/dist/mcp/tools/index.js +58 -0
- package/dist/mcp/tools/index.js.map +1 -0
- package/dist/mcp/tools/jira.d.ts +12 -0
- package/dist/mcp/tools/jira.d.ts.map +1 -0
- package/dist/mcp/tools/jira.js +206 -0
- package/dist/mcp/tools/jira.js.map +1 -0
- package/dist/mcp/tools/planning.d.ts +22 -0
- package/dist/mcp/tools/planning.d.ts.map +1 -0
- package/dist/mcp/tools/planning.js +264 -0
- package/dist/mcp/tools/planning.js.map +1 -0
- package/dist/mcp/tools/skill.d.ts +42 -0
- package/dist/mcp/tools/skill.d.ts.map +1 -0
- package/dist/mcp/tools/skill.js +561 -0
- package/dist/mcp/tools/skill.js.map +1 -0
- package/dist/mcp/tools/template.d.ts +36 -0
- package/dist/mcp/tools/template.d.ts.map +1 -0
- package/dist/mcp/tools/template.js +354 -0
- package/dist/mcp/tools/template.js.map +1 -0
- package/dist/mcp/tools/writer.d.ts +23 -0
- package/dist/mcp/tools/writer.d.ts.map +1 -0
- package/dist/mcp/tools/writer.js +394 -0
- package/dist/mcp/tools/writer.js.map +1 -0
- package/dist/mcp/types.d.ts +102 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/mcp/types.js +37 -0
- package/dist/mcp/types.js.map +1 -0
- package/dist/templates/index.d.ts +11 -0
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +11 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/templates/mcp-hooks.d.ts +37 -0
- package/dist/templates/mcp-hooks.d.ts.map +1 -0
- package/dist/templates/mcp-hooks.js +224 -0
- package/dist/templates/mcp-hooks.js.map +1 -0
- package/dist/templates/serena-project.d.ts +14 -0
- package/dist/templates/serena-project.d.ts.map +1 -0
- package/dist/templates/serena-project.js +105 -0
- package/dist/templates/serena-project.js.map +1 -0
- package/dist/templates/settings-json.d.ts +28 -0
- package/dist/templates/settings-json.d.ts.map +1 -0
- package/dist/templates/settings-json.js +190 -0
- package/dist/templates/settings-json.js.map +1 -0
- package/dist/templates/settings-local.d.ts +69 -0
- package/dist/templates/settings-local.d.ts.map +1 -0
- package/dist/templates/settings-local.js +56 -0
- package/dist/templates/settings-local.js.map +1 -0
- package/dist/templates/statusline.d.ts +7 -0
- package/dist/templates/statusline.d.ts.map +1 -0
- package/dist/templates/statusline.js +260 -0
- package/dist/templates/statusline.js.map +1 -0
- package/dist/types/command-options.d.ts +392 -0
- package/dist/types/command-options.d.ts.map +1 -0
- package/dist/types/command-options.js +15 -0
- package/dist/types/command-options.js.map +1 -0
- package/framework/modules/backlog/agents/ai-backlog-manager.md +430 -0
- package/framework/modules/backlog/commands/cmd-backlog-create-ticket.md +42 -0
- package/framework/modules/backlog/commands/cmd-backlog-import.md +42 -0
- package/framework/modules/backlog/commands/cmd-backlog-migrate-milestones.md +42 -0
- package/framework/modules/backlog/commands/cmd-backlog-update-fields.md +42 -0
- package/framework/modules/backlog/commands/cmd-backlog-validate.md +42 -0
- package/framework/modules/backlog/module.json +82 -0
- package/framework/modules/backlog/schemas/ticket.schema.json +143 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/BODY-STRUCTURE.md +470 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/EXAMPLES.md +561 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/SKILL.md +293 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/VALIDATION-RULES.md +748 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/YAML-STRUCTURE.md +439 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/templates/bug.template.md +83 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/templates/epic.template.md +96 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/templates/story.template.md +68 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/templates/task.template.md +66 -0
- package/framework/modules/backlog/skills/backlog/building-tickets/templates/template.config.json +50 -0
- package/framework/modules/backlog/skills/backlog/organizing-backlog/DIRECTORY-STRUCTURE.md +195 -0
- package/framework/modules/backlog/skills/backlog/organizing-backlog/EXAMPLES.md +374 -0
- package/framework/modules/backlog/skills/backlog/organizing-backlog/JIRA-SOURCE-OF-TRUTH.md +384 -0
- package/framework/modules/backlog/skills/backlog/organizing-backlog/NAMING-CONVENTIONS.md +230 -0
- package/framework/modules/backlog/skills/backlog/organizing-backlog/SKILL.md +332 -0
- package/framework/modules/backlog/skills/backlog/organizing-backlog/WORKFLOW-PIPELINE.md +298 -0
- package/framework/modules/backlog/templates/ticket.md.template +111 -0
- package/framework/modules/coding/agents/ai-app-developer.md +275 -0
- package/framework/modules/coding/agents/ai-architect.md +454 -0
- package/framework/modules/coding/agents/ai-hig-reviewer.md +69 -0
- package/framework/modules/coding/agents/ai-ios-developer.md +303 -0
- package/framework/modules/coding/module.json +56 -0
- package/framework/modules/coding/skills/coding/designing-architecture/SKILL.md +475 -0
- package/framework/modules/coding/skills/coding/designing-ios-ui/SKILL.md +405 -0
- package/framework/modules/coding/skills/coding/implementing-code/EXAMPLES.md +565 -0
- package/framework/modules/coding/skills/coding/implementing-code/SKILL.md +490 -0
- package/framework/modules/coding/skills/coding/implementing-ios/ANTI-PATTERNS.md +564 -0
- package/framework/modules/coding/skills/coding/implementing-ios/ARCHITECTURE-PATTERNS.md +539 -0
- package/framework/modules/coding/skills/coding/implementing-ios/HIG-COMPLIANCE.md +492 -0
- package/framework/modules/coding/skills/coding/implementing-ios/SKILL.md +506 -0
- package/framework/modules/coding/skills/coding/implementing-ios/SWIFTUI-PATTERNS.md +625 -0
- package/framework/modules/coding/skills/coding/implementing-ios/TESTING-PATTERNS.md +625 -0
- package/framework/modules/coding/skills/coding/implementing-ios/UIKIT-PATTERNS.md +470 -0
- package/framework/modules/coding/skills/coding/structuring-code/CHECKLISTS.md +151 -0
- package/framework/modules/coding/skills/coding/structuring-code/DRY-PRINCIPLES.md +285 -0
- package/framework/modules/coding/skills/coding/structuring-code/FILE-ORGANIZATION.md +278 -0
- package/framework/modules/coding/skills/coding/structuring-code/READABILITY.md +291 -0
- package/framework/modules/coding/skills/coding/structuring-code/SKILL.md +289 -0
- package/framework/modules/confluence/agents/ai-confluence-manager.md +369 -0
- package/framework/modules/confluence/commands/cmd-confluence-create-page.md +42 -0
- package/framework/modules/confluence/commands/cmd-confluence-fetch-page.md +42 -0
- package/framework/modules/confluence/commands/cmd-confluence-import-reports.md +42 -0
- package/framework/modules/confluence/commands/cmd-confluence-validate.md +42 -0
- package/framework/modules/confluence/module.json +69 -0
- package/framework/modules/confluence/schemas/adf.schema.json +128 -0
- package/framework/modules/confluence/skills/confluence/converting-adf/SKILL.md +455 -0
- package/framework/modules/confluence/skills/confluence/publishing-confluence/ADF-EXAMPLES.md +433 -0
- package/framework/modules/confluence/skills/confluence/publishing-confluence/EXAMPLES.md +513 -0
- package/framework/modules/confluence/skills/confluence/publishing-confluence/SKILL.md +651 -0
- package/framework/modules/core/agents/ai-framework-developer.md +184 -0
- package/framework/modules/core/agents/ai-framework-manager.md +222 -0
- package/framework/modules/core/agents/ai-scout-backlog.md +65 -0
- package/framework/modules/core/agents/ai-scout-codebase.md +66 -0
- package/framework/modules/core/agents/ai-scout-knowledge.md +63 -0
- package/framework/modules/core/commands/cmd-agent-list.md +37 -0
- package/framework/modules/core/commands/cmd-agent-run.md +37 -0
- package/framework/modules/core/commands/cmd-agent-show.md +37 -0
- package/framework/modules/core/commands/cmd-bump-version.md +42 -0
- package/framework/modules/core/commands/cmd-mcp-check.md +59 -0
- package/framework/modules/core/commands/cmd-mcp-seed.md +69 -0
- package/framework/modules/core/commands/cmd-mcp-setup.md +61 -0
- package/framework/modules/core/commands/cmd-mcp-status.md +70 -0
- package/framework/modules/core/commands/cmd-validate-links.md +42 -0
- package/framework/modules/core/commands/cmd-validate-versions.md +42 -0
- package/framework/modules/core/hooks/_lib/notify-helper.sh +27 -0
- package/framework/modules/core/hooks/block-main-commit.sh +35 -0
- package/framework/modules/core/hooks/notify.sh +43 -0
- package/framework/modules/core/hooks/post-write-format.sh +52 -0
- package/framework/modules/core/hooks/post-write-validate.sh +24 -0
- package/framework/modules/core/hooks/pre-bash-safety.sh +44 -0
- package/framework/modules/core/hooks/pre-commit-skill-reminder.sh +24 -0
- package/framework/modules/core/hooks/pre-write-quality.sh +24 -0
- package/framework/modules/core/hooks/session-compact-context.sh +37 -0
- package/framework/modules/core/hooks/session-end-reminder.sh +36 -0
- package/framework/modules/core/hooks/session-start-context.sh +33 -0
- package/framework/modules/core/hooks/session-start-worktree.sh +30 -0
- package/framework/modules/core/hooks/skill-reminder.sh +24 -0
- package/framework/modules/core/hooks/stop-commit-check.sh +24 -0
- package/framework/modules/core/hooks/stop-pr-suggest.sh +42 -0
- package/framework/modules/core/hooks/stop-quality-check.sh +24 -0
- package/framework/modules/core/hooks/subagent-context-loader.sh +24 -0
- package/framework/modules/core/module.json +205 -0
- package/framework/modules/core/registries/schemas/agents.schema.json +209 -0
- package/framework/modules/core/registries/schemas/command.schema.json +98 -0
- package/framework/modules/core/registries/schemas/custom-agent.schema.json +108 -0
- package/framework/modules/core/registries/schemas/module.schema.json +233 -0
- package/framework/modules/core/registries/schemas/template.schema.json +164 -0
- package/framework/modules/core/registries/skill-triggers.json +196 -0
- package/framework/modules/core/skills/building-agents/AGENT-TEMPLATE.md +289 -0
- package/framework/modules/core/skills/building-agents/CONTENT-ROUTING.md +302 -0
- package/framework/modules/core/skills/building-agents/EXAMPLES.md +448 -0
- package/framework/modules/core/skills/building-agents/SKILL.md +289 -0
- package/framework/modules/core/skills/building-agents/VALIDATION-CHECKLIST.md +304 -0
- package/framework/modules/core/skills/building-context/CONTENT-GUIDELINES.md +471 -0
- package/framework/modules/core/skills/building-context/EXAMPLES.md +1606 -0
- package/framework/modules/core/skills/building-context/LEVEL-DECISION-TREE.md +262 -0
- package/framework/modules/core/skills/building-context/SKILL.md +479 -0
- package/framework/modules/core/skills/building-context/VALIDATION-CHECKLIST.md +358 -0
- package/framework/modules/core/skills/building-framework/AGENT-CREATION-WORKFLOW.md +268 -0
- package/framework/modules/core/skills/building-framework/DECISION-TREES.md +183 -0
- package/framework/modules/core/skills/building-framework/EXAMPLES.md +387 -0
- package/framework/modules/core/skills/building-framework/GOVERNANCE-RULES.md +446 -0
- package/framework/modules/core/skills/building-framework/GOVERNANCE-UPDATE-WORKFLOW.md +172 -0
- package/framework/modules/core/skills/building-framework/REGISTRY-GUIDE.md +551 -0
- package/framework/modules/core/skills/building-framework/SCOPE-DECISION-TREE.md +284 -0
- package/framework/modules/core/skills/building-framework/SKILL.md +210 -0
- package/framework/modules/core/skills/building-skills/ANTI-PATTERNS-CONTENT.md +219 -0
- package/framework/modules/core/skills/building-skills/ANTI-PATTERNS-MCP.md +119 -0
- package/framework/modules/core/skills/building-skills/ANTI-PATTERNS-NAMING.md +129 -0
- package/framework/modules/core/skills/building-skills/ANTI-PATTERNS-STRUCTURE.md +139 -0
- package/framework/modules/core/skills/building-skills/EXAMPLES.md +330 -0
- package/framework/modules/core/skills/building-skills/PATTERNS.md +523 -0
- package/framework/modules/core/skills/building-skills/SKILL-CREATION-WORKFLOW-FRAMEWORK.md +253 -0
- package/framework/modules/core/skills/building-skills/SKILL.md +543 -0
- package/framework/modules/core/skills/committing-code/EXAMPLES.md +567 -0
- package/framework/modules/core/skills/committing-code/SKILL.md +285 -0
- package/framework/modules/core/skills/committing-code/STANDARDS-BRANCHES.md +95 -0
- package/framework/modules/core/skills/committing-code/STANDARDS-COMMITS.md +140 -0
- package/framework/modules/core/skills/committing-code/STANDARDS-FRAMEWORK.md +234 -0
- package/framework/modules/core/skills/committing-code/STANDARDS-TICKETS.md +102 -0
- package/framework/modules/core/skills/gathering-intelligence/SKILL.md +136 -0
- package/framework/modules/core/skills/managing-versions/EXAMPLES.md +277 -0
- package/framework/modules/core/skills/managing-versions/SCRIPTS-REFERENCE.md +295 -0
- package/framework/modules/core/skills/managing-versions/SKILL.md +260 -0
- package/framework/modules/core/skills/managing-versions/STANDARDS.md +231 -0
- package/framework/modules/core/skills/using-context/EXAMPLES.md +257 -0
- package/framework/modules/core/skills/using-context/SKILL.md +238 -0
- package/framework/modules/core/skills/using-context/STANDARDS.md +241 -0
- package/framework/modules/core/skills/using-framework/BEST-PRACTICES.md +421 -0
- package/framework/modules/core/skills/using-framework/DISCOVERY-ENGINE-ARCHITECTURE.md +331 -0
- package/framework/modules/core/skills/using-framework/EXAMPLES.md +535 -0
- package/framework/modules/core/skills/using-framework/ROUTES-REGISTRY-DESIGN.md +455 -0
- package/framework/modules/core/skills/using-framework/SKILL.md +176 -0
- package/framework/modules/core/skills/using-mcp/ANTI-PATTERNS.md +566 -0
- package/framework/modules/core/skills/using-mcp/DECISION-MATRICES.md +385 -0
- package/framework/modules/core/skills/using-mcp/EXAMPLES.md +466 -0
- package/framework/modules/core/skills/using-mcp/FRAMEWORK-MCP-PATTERNS.md +395 -0
- package/framework/modules/core/skills/using-mcp/QUICK-REFERENCE.md +98 -0
- package/framework/modules/core/skills/using-mcp/SKILL.md +624 -0
- package/framework/modules/core/skills/using-mcp/TOOLS-REFERENCE.md +532 -0
- package/framework/modules/core/skills/validating-links/EXAMPLES.md +326 -0
- package/framework/modules/core/skills/validating-links/SKILL.md +307 -0
- package/framework/modules/core/skills/validating-links/STANDARDS.md +353 -0
- package/framework/modules/core/skills/validating-markdown/EXAMPLES.md +516 -0
- package/framework/modules/core/skills/validating-markdown/SKILL.md +503 -0
- package/framework/modules/core/skills/validating-markdown/VALIDATION-RULES.md +360 -0
- package/framework/modules/core/skills/validating-markdown/YAML-SCHEMA.md +424 -0
- package/framework/modules/core/skills/verifying-quality/ANTI-PATTERNS.md +302 -0
- package/framework/modules/core/skills/verifying-quality/CLI-TESTING.md +389 -0
- package/framework/modules/core/skills/verifying-quality/DEFENSIVE-CODING.md +433 -0
- package/framework/modules/core/skills/verifying-quality/EVALUATION-PROTOCOL.md +106 -0
- package/framework/modules/core/skills/verifying-quality/EXAMPLES.md +588 -0
- package/framework/modules/core/skills/verifying-quality/QUALITY-CHECKLIST.md +181 -0
- package/framework/modules/core/skills/verifying-quality/SKILL.md +275 -0
- package/framework/modules/core/templates/agent/agent.template.md +97 -0
- package/framework/modules/core/templates/agent/template.config.json +47 -0
- package/framework/modules/core/templates/config/agentic-framework.json.template +17 -0
- package/framework/modules/core/templates/config/hooks/pre-commit-sync.sh.template +190 -0
- package/framework/modules/core/templates/config/hooks/pre-push.sh.template +330 -0
- package/framework/modules/core/templates/config/settings.local.json.template +39 -0
- package/framework/modules/core/templates/config/statusline.sh.template +253 -0
- package/framework/modules/core/templates/context/business-advanced.template.md +71 -0
- package/framework/modules/core/templates/context/business-basic.template.md +39 -0
- package/framework/modules/core/templates/context/business-expert.template.md +95 -0
- package/framework/modules/core/templates/context/process-advanced.template.md +141 -0
- package/framework/modules/core/templates/context/process-basic.template.md +87 -0
- package/framework/modules/core/templates/context/process-expert.template.md +213 -0
- package/framework/modules/core/templates/context/technical-advanced.template.md +111 -0
- package/framework/modules/core/templates/context/technical-basic.template.md +66 -0
- package/framework/modules/core/templates/context/technical-expert.template.md +157 -0
- package/framework/modules/core/templates/module/module.json.template +20 -0
- package/framework/modules/core/templates/module/template.config.json +41 -0
- package/framework/modules/core/templates/skill/SKILL.md.template +96 -0
- package/framework/modules/core/templates/skill/template.config.json +39 -0
- package/framework/modules/jira/agents/ai-jira-manager.md +320 -0
- package/framework/modules/jira/commands/cmd-jira-export.md +42 -0
- package/framework/modules/jira/commands/cmd-jira-sync.md +42 -0
- package/framework/modules/jira/module.json +55 -0
- package/framework/modules/jira/schemas/jira-sync.config.json +75 -0
- package/framework/modules/jira/skills/jira/integrating-jira/CONFLUENCE-PATTERNS.md +284 -0
- package/framework/modules/jira/skills/jira/integrating-jira/CONVERSION-RULES.md +188 -0
- package/framework/modules/jira/skills/jira/integrating-jira/EXAMPLES.md +406 -0
- package/framework/modules/jira/skills/jira/integrating-jira/JIRA-PATTERNS.md +284 -0
- package/framework/modules/jira/skills/jira/integrating-jira/SKILL.md +412 -0
- package/framework/modules/reporting/agents/ai-report-manager.md +410 -0
- package/framework/modules/reporting/module.json +35 -0
- package/framework/modules/reporting/skills/reporting/building-reports/EXAMPLES.md +613 -0
- package/framework/modules/reporting/skills/reporting/building-reports/SKILL.md +509 -0
- package/framework/modules/writer/BUILD_SYSTEM.md +325 -0
- package/framework/modules/writer/MIGRATION.md +326 -0
- package/framework/modules/writer/agents/ai-book-writer.md +196 -0
- package/framework/modules/writer/agents/ai-prose-writer.md +58 -0
- package/framework/modules/writer/agents/ai-world-builder.md +46 -0
- package/framework/modules/writer/commands/cmd-writer-add-fact.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-analyze.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-build.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-chapter.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-character.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-history-event.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-magic-system.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-nation.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-part.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-region.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-scene.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-create-world-rule.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-export.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-generate-context.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-init-baseline.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-init.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-lock-fact.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-validate-immutability.md +42 -0
- package/framework/modules/writer/commands/cmd-writer-validate.md +42 -0
- package/framework/modules/writer/module.json +181 -0
- package/framework/modules/writer/schemas/baseline.schema.json +60 -0
- package/framework/modules/writer/schemas/manifest.schema.json +155 -0
- package/framework/modules/writer/schemas/prerequisites.schema.json +171 -0
- package/framework/modules/writer/schemas/token-budgets.json +129 -0
- package/framework/modules/writer/schemas/token-budgets.schema.json +92 -0
- package/framework/modules/writer/schemas/world-fact.schema.json +172 -0
- package/framework/modules/writer/schemas/world-lock.schema.json +244 -0
- package/framework/modules/writer/skills/writer/building-worlds/CONSISTENCY-PILLARS.md +412 -0
- package/framework/modules/writer/skills/writer/building-worlds/CULTURE-BUILDING.md +354 -0
- package/framework/modules/writer/skills/writer/building-worlds/GEOGRAPHY-HISTORY.md +293 -0
- package/framework/modules/writer/skills/writer/building-worlds/MAGIC-SYSTEMS.md +311 -0
- package/framework/modules/writer/skills/writer/building-worlds/REVELATION-CHECKLIST.md +282 -0
- package/framework/modules/writer/skills/writer/building-worlds/SKILL.md +313 -0
- package/framework/modules/writer/skills/writer/organizing-books/DOMAINS.md +212 -0
- package/framework/modules/writer/skills/writer/organizing-books/FOLDER-STRUCTURE.md +593 -0
- package/framework/modules/writer/skills/writer/organizing-books/IMMUTABILITY-GUIDE.md +350 -0
- package/framework/modules/writer/skills/writer/organizing-books/METADATA-GUIDE.md +780 -0
- package/framework/modules/writer/skills/writer/organizing-books/SKILL.md +257 -0
- package/framework/modules/writer/skills/writer/organizing-books/SSOT-RULES.md +214 -0
- package/framework/modules/writer/skills/writer/organizing-books/WORLD-STRUCTURE.md +222 -0
- package/framework/modules/writer/skills/writer/organizing-books/templates/chapter.template.md +57 -0
- package/framework/modules/writer/skills/writer/organizing-books/templates/character.template.md +121 -0
- package/framework/modules/writer/skills/writer/organizing-books/templates/part.template.md +67 -0
- package/framework/modules/writer/skills/writer/organizing-books/templates/scene.template.md +62 -0
- package/framework/modules/writer/skills/writer/organizing-books/templates/template.config.json +114 -0
- package/framework/modules/writer/skills/writer/writing-prose/CHARACTER-VOICE.md +654 -0
- package/framework/modules/writer/skills/writer/writing-prose/DESCRIPTION-TECHNIQUES.md +688 -0
- package/framework/modules/writer/skills/writer/writing-prose/DIALOGUE-GUIDE.md +663 -0
- package/framework/modules/writer/skills/writer/writing-prose/PACING-STRUCTURE.md +613 -0
- package/framework/modules/writer/skills/writer/writing-prose/PROSE-PATTERNS.md +569 -0
- package/framework/modules/writer/skills/writer/writing-prose/SKILL.md +583 -0
- package/framework/modules/writer/skills/writer/writing-prose/WORLD-BUILDING-RULES.md +692 -0
- package/framework/modules/writer/skills/writer/writing-prose/examples/blended-accessible.md +651 -0
- package/framework/modules/writer/skills/writer/writing-prose/examples/tolkien-style.md +534 -0
- package/framework/modules/writer/skills/writer/writing-prose/examples/zelazny-style.md +415 -0
- package/framework/modules/writer/src/package.json +3 -0
- package/framework/modules/writer/templates/package.json +28 -0
- package/framework/modules/writer/templates/world/baseline.template.md +183 -0
- package/framework/modules/writer/templates/world/history-event.template.md +89 -0
- package/framework/modules/writer/templates/world/magic-system.template.md +138 -0
- package/framework/modules/writer/templates/world/manifest.template.json +9 -0
- package/framework/modules/writer/templates/world/nation.template.md +123 -0
- package/framework/modules/writer/templates/world/region.template.md +65 -0
- package/framework/modules/writer/templates/world/world-rule.template.md +50 -0
- package/package.json +110 -0
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
# DRY Principles
|
|
2
|
+
|
|
3
|
+
This document provides detailed guidance on identifying and handling code duplication.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Types of Duplication
|
|
8
|
+
|
|
9
|
+
### Exact Duplication
|
|
10
|
+
|
|
11
|
+
**Definition:** Identical or nearly identical code blocks in multiple locations.
|
|
12
|
+
|
|
13
|
+
**How to spot:**
|
|
14
|
+
- Copy-paste detector tools flag it
|
|
15
|
+
- Same logic, same variable names
|
|
16
|
+
- Bug fixes needed in multiple places
|
|
17
|
+
- Obvious when reading code
|
|
18
|
+
|
|
19
|
+
**Example scenario:**
|
|
20
|
+
```
|
|
21
|
+
// Found in OrderService
|
|
22
|
+
if (order.total > 100) {
|
|
23
|
+
discount = order.total * 0.1;
|
|
24
|
+
order.total = order.total - discount;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// Same code in CartService
|
|
28
|
+
if (cart.total > 100) {
|
|
29
|
+
discount = cart.total * 0.1;
|
|
30
|
+
cart.total = cart.total - discount;
|
|
31
|
+
}
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**Resolution:** Extract to shared function with parameterized entity.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
### Structural Duplication
|
|
39
|
+
|
|
40
|
+
**Definition:** Same pattern or structure with different data or types.
|
|
41
|
+
|
|
42
|
+
**How to spot:**
|
|
43
|
+
- Similar shape, different details
|
|
44
|
+
- Repeated patterns across different domains
|
|
45
|
+
- Same sequence of operations on different entities
|
|
46
|
+
|
|
47
|
+
**Example scenario:**
|
|
48
|
+
```
|
|
49
|
+
// User validation
|
|
50
|
+
function validateUser(user) {
|
|
51
|
+
if (!user.name) throw new Error('Name required');
|
|
52
|
+
if (!user.email) throw new Error('Email required');
|
|
53
|
+
if (!isValidEmail(user.email)) throw new Error('Invalid email');
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Product validation
|
|
57
|
+
function validateProduct(product) {
|
|
58
|
+
if (!product.name) throw new Error('Name required');
|
|
59
|
+
if (!product.sku) throw new Error('SKU required');
|
|
60
|
+
if (!isValidSku(product.sku)) throw new Error('Invalid SKU');
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Resolution:** Consider generic validation framework, schema validation, or accept as reasonable duplication if domains evolve differently.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
### Conceptual Duplication
|
|
69
|
+
|
|
70
|
+
**Definition:** Same concept implemented differently in multiple places.
|
|
71
|
+
|
|
72
|
+
**How to spot:**
|
|
73
|
+
- Same business rule, different code
|
|
74
|
+
- Multiple ways to do the same thing
|
|
75
|
+
- Inconsistent behavior for same operation
|
|
76
|
+
|
|
77
|
+
**Example scenario:**
|
|
78
|
+
```
|
|
79
|
+
// In OrderService: checks user role inline
|
|
80
|
+
if (user.role === 'admin' || user.role === 'manager') {
|
|
81
|
+
// allow action
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
// In ReportService: different role check
|
|
85
|
+
if (user.permissions.includes('view-reports')) {
|
|
86
|
+
// allow action
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
// Same concept: "can user do this?" but implemented differently
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**Resolution:** Establish single source of truth for the concept (authorization service, permission checker).
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## When to Extract
|
|
97
|
+
|
|
98
|
+
### Rule of Three
|
|
99
|
+
|
|
100
|
+
**Principle:** Consider extraction on the third occurrence.
|
|
101
|
+
|
|
102
|
+
**Rationale:**
|
|
103
|
+
- First time: Just write it
|
|
104
|
+
- Second time: Notice the similarity, but might be coincidence
|
|
105
|
+
- Third time: Pattern confirmed, extract
|
|
106
|
+
|
|
107
|
+
**Caveat:** Don't wait for three if:
|
|
108
|
+
- Business concept clearly exists
|
|
109
|
+
- Duplication is complex (many lines)
|
|
110
|
+
- You're about to add more occurrences
|
|
111
|
+
|
|
112
|
+
### Business Concept Exists
|
|
113
|
+
|
|
114
|
+
**Extract when you can name it:**
|
|
115
|
+
- "Calculate discount" → `calculateDiscount()`
|
|
116
|
+
- "Format currency" → `formatCurrency()`
|
|
117
|
+
- "Check permission" → `hasPermission()`
|
|
118
|
+
|
|
119
|
+
**If you can't name it clearly, maybe don't extract:**
|
|
120
|
+
- Vague names like `doThing()` or `processData()` suggest the abstraction isn't real
|
|
121
|
+
- Forced abstraction creates confusion
|
|
122
|
+
|
|
123
|
+
### Changes Propagate Together
|
|
124
|
+
|
|
125
|
+
**Strong signal for extraction:**
|
|
126
|
+
- When you change one copy, you change all copies
|
|
127
|
+
- Bug in one means bug in all
|
|
128
|
+
- Feature request affects all instances
|
|
129
|
+
|
|
130
|
+
**This indicates true duplication, not coincidence.**
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## When NOT to Extract
|
|
135
|
+
|
|
136
|
+
### Incidental Similarity
|
|
137
|
+
|
|
138
|
+
**Definition:** Code looks the same now but serves different purposes.
|
|
139
|
+
|
|
140
|
+
**Indicators:**
|
|
141
|
+
- Different business domains
|
|
142
|
+
- Different expected evolution paths
|
|
143
|
+
- Similar by coincidence, not by design
|
|
144
|
+
|
|
145
|
+
**Example:**
|
|
146
|
+
```
|
|
147
|
+
// User registration validation
|
|
148
|
+
function validateRegistration(data) {
|
|
149
|
+
if (!data.email) throw new Error('Email required');
|
|
150
|
+
if (!data.password) throw new Error('Password required');
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// Newsletter signup validation
|
|
154
|
+
function validateNewsletterSignup(data) {
|
|
155
|
+
if (!data.email) throw new Error('Email required');
|
|
156
|
+
if (!data.preferences) throw new Error('Preferences required');
|
|
157
|
+
}
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
**Why not extract:** These will evolve differently. Registration may add phone number, newsletter may add frequency. Forcing them together creates awkward code.
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
### Different Evolution Paths
|
|
165
|
+
|
|
166
|
+
**Ask:** Will these change together or separately?
|
|
167
|
+
|
|
168
|
+
**Same evolution (extract):**
|
|
169
|
+
- Tax calculation for orders and invoices (tax rules change together)
|
|
170
|
+
- Date formatting across the app (format requirements are global)
|
|
171
|
+
|
|
172
|
+
**Different evolution (keep separate):**
|
|
173
|
+
- Admin form validation vs customer form validation
|
|
174
|
+
- Internal API serialization vs external API serialization
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
### Abstraction Adds Complexity
|
|
179
|
+
|
|
180
|
+
**"The wrong abstraction is worse than duplication."**
|
|
181
|
+
|
|
182
|
+
**Signs of wrong abstraction:**
|
|
183
|
+
- Parameters for every variation
|
|
184
|
+
- Conditionals inside to handle cases
|
|
185
|
+
- Difficult to understand what it does
|
|
186
|
+
- Changes require understanding all use cases
|
|
187
|
+
|
|
188
|
+
**Example of problematic extraction:**
|
|
189
|
+
```
|
|
190
|
+
// Trying to handle all cases
|
|
191
|
+
function formatEntity(entity, options) {
|
|
192
|
+
if (options.type === 'user') {
|
|
193
|
+
// user-specific logic
|
|
194
|
+
} else if (options.type === 'order') {
|
|
195
|
+
// order-specific logic
|
|
196
|
+
} else if (options.type === 'product') {
|
|
197
|
+
// product-specific logic
|
|
198
|
+
}
|
|
199
|
+
// ... continues with many branches
|
|
200
|
+
}
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
**Better:** Keep separate, focused functions until true common pattern emerges.
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## Extraction Patterns
|
|
208
|
+
|
|
209
|
+
### Extract Function
|
|
210
|
+
|
|
211
|
+
**When:** Same logic in multiple functions.
|
|
212
|
+
|
|
213
|
+
**How:**
|
|
214
|
+
1. Identify the duplicated code
|
|
215
|
+
2. Create new function with descriptive name
|
|
216
|
+
3. Parameterize the differences
|
|
217
|
+
4. Replace duplicates with calls to new function
|
|
218
|
+
5. Run tests
|
|
219
|
+
|
|
220
|
+
### Extract Class/Module
|
|
221
|
+
|
|
222
|
+
**When:** Group of related functions that work together.
|
|
223
|
+
|
|
224
|
+
**How:**
|
|
225
|
+
1. Identify related functions and data
|
|
226
|
+
2. Create class/module with clear responsibility
|
|
227
|
+
3. Move functions as methods
|
|
228
|
+
4. Update callers
|
|
229
|
+
5. Run tests
|
|
230
|
+
|
|
231
|
+
### Extract Constant/Configuration
|
|
232
|
+
|
|
233
|
+
**When:** Same literal value in multiple places.
|
|
234
|
+
|
|
235
|
+
**How:**
|
|
236
|
+
1. Identify the repeated value
|
|
237
|
+
2. Create named constant with meaningful name
|
|
238
|
+
3. Replace literals with constant reference
|
|
239
|
+
4. Document the constant if purpose isn't obvious
|
|
240
|
+
|
|
241
|
+
### Parameterize
|
|
242
|
+
|
|
243
|
+
**When:** Same logic, different data.
|
|
244
|
+
|
|
245
|
+
**How:**
|
|
246
|
+
1. Identify the varying parts
|
|
247
|
+
2. Make them parameters
|
|
248
|
+
3. Ensure parameter names communicate purpose
|
|
249
|
+
4. Keep parameter count reasonable (use options object if many)
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## Abstraction Quality
|
|
254
|
+
|
|
255
|
+
### Good Abstractions
|
|
256
|
+
|
|
257
|
+
**Characteristics:**
|
|
258
|
+
- Hide complexity behind simple interface
|
|
259
|
+
- Stable over time (implementation changes, interface doesn't)
|
|
260
|
+
- Clear, descriptive name
|
|
261
|
+
- Single responsibility
|
|
262
|
+
- Easy to use correctly, hard to use incorrectly
|
|
263
|
+
|
|
264
|
+
### Bad Abstractions
|
|
265
|
+
|
|
266
|
+
**Characteristics:**
|
|
267
|
+
- Leaky (implementation details escape)
|
|
268
|
+
- Unstable (interface changes frequently)
|
|
269
|
+
- Vague name
|
|
270
|
+
- Does too many things
|
|
271
|
+
- Requires understanding internals to use
|
|
272
|
+
|
|
273
|
+
### Signs Abstraction Is Needed
|
|
274
|
+
|
|
275
|
+
- Duplication is spreading
|
|
276
|
+
- Same bugs fixed in multiple places
|
|
277
|
+
- New team members implement same thing differently
|
|
278
|
+
- Code reviews catch "we already have this"
|
|
279
|
+
|
|
280
|
+
### Signs of Premature Abstraction
|
|
281
|
+
|
|
282
|
+
- Only one use case exists
|
|
283
|
+
- You're guessing future needs
|
|
284
|
+
- Abstraction name is vague or forced
|
|
285
|
+
- You're building "infrastructure" before features
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
# File Organization Principles
|
|
2
|
+
|
|
3
|
+
This document provides detailed guidance on organizing files and directories for maintainable codebases.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## One Responsibility Per File
|
|
8
|
+
|
|
9
|
+
### Core Principle
|
|
10
|
+
|
|
11
|
+
Each file should have a single, clear purpose that can be described in one sentence.
|
|
12
|
+
|
|
13
|
+
**Good indicators:**
|
|
14
|
+
- File name accurately describes its entire content
|
|
15
|
+
- You can explain what the file does without saying "and"
|
|
16
|
+
- Changes to one concept don't require editing this file
|
|
17
|
+
|
|
18
|
+
**Problem indicators:**
|
|
19
|
+
- File contains unrelated classes or functions
|
|
20
|
+
- File name is vague (utils.ts, helpers.py, common.cs)
|
|
21
|
+
- Multiple developers frequently edit the same file for unrelated reasons
|
|
22
|
+
|
|
23
|
+
### What Belongs Together
|
|
24
|
+
|
|
25
|
+
**Keep together:**
|
|
26
|
+
- A class and its directly related types (enums, interfaces it implements)
|
|
27
|
+
- A component and its local styles/types (if framework supports)
|
|
28
|
+
- A function and its parameter/return types
|
|
29
|
+
- Test utilities specific to one test file
|
|
30
|
+
|
|
31
|
+
**Split apart:**
|
|
32
|
+
- Classes with different responsibilities
|
|
33
|
+
- Utilities used across multiple files (extract to shared location)
|
|
34
|
+
- Configuration and implementation
|
|
35
|
+
- Domain logic and infrastructure concerns
|
|
36
|
+
|
|
37
|
+
### Naming Files
|
|
38
|
+
|
|
39
|
+
**Match content to name:**
|
|
40
|
+
- File `UserService.ts` exports `UserService` class
|
|
41
|
+
- File `calculate-totals.py` exports `calculate_totals` function
|
|
42
|
+
- File `OrderTypes.swift` contains Order-related type definitions
|
|
43
|
+
|
|
44
|
+
**Avoid vague names:**
|
|
45
|
+
- `utils.ts` - Instead, name by purpose: `string-utils.ts`, `date-formatting.ts`
|
|
46
|
+
- `helpers.py` - Instead, name by domain: `order-helpers.py`, `validation.py`
|
|
47
|
+
- `misc.cs` - Split into properly named files
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## File Size Guidelines
|
|
52
|
+
|
|
53
|
+
### Target Ranges
|
|
54
|
+
|
|
55
|
+
| Size | Assessment | Action |
|
|
56
|
+
|------|------------|--------|
|
|
57
|
+
| < 30 lines | Possibly over-split | Consider if this could merge with related file |
|
|
58
|
+
| 30-100 lines | Small, focused | Good for single-purpose utilities |
|
|
59
|
+
| 100-300 lines | Typical, healthy | Normal range for most files |
|
|
60
|
+
| 300-400 lines | Large but acceptable | Review for hidden complexity |
|
|
61
|
+
| 400-500 lines | At limit | Proactively plan splitting |
|
|
62
|
+
| 500+ lines | **Not allowed** | Must split before committing |
|
|
63
|
+
|
|
64
|
+
### 500 Lines is the Hard Limit
|
|
65
|
+
|
|
66
|
+
Files exceeding 500 lines are not acceptable in this codebase. If a file approaches this limit:
|
|
67
|
+
|
|
68
|
+
1. **Identify responsibilities** - What distinct concerns does the file handle?
|
|
69
|
+
2. **Plan the split** - How can these be separated into focused files?
|
|
70
|
+
3. **Execute the refactor** - Split before the file grows further
|
|
71
|
+
|
|
72
|
+
**No exceptions for:**
|
|
73
|
+
- Generated code - Generate to multiple files if needed
|
|
74
|
+
- Test suites - Split by test category or feature
|
|
75
|
+
- Configuration - Use includes or split by domain
|
|
76
|
+
|
|
77
|
+
**Only acceptable reasons for temporary >500:**
|
|
78
|
+
- Active refactoring in progress (with TODO to complete)
|
|
79
|
+
- Legacy code being actively migrated
|
|
80
|
+
|
|
81
|
+
### When to Split a Large File
|
|
82
|
+
|
|
83
|
+
**Split when:**
|
|
84
|
+
- File contains distinct sections with different purposes
|
|
85
|
+
- Two developers frequently need different parts
|
|
86
|
+
- You can name the extracted parts clearly
|
|
87
|
+
- Tests would be easier if split
|
|
88
|
+
|
|
89
|
+
**Don't split when:**
|
|
90
|
+
- Content is cohesive (single algorithm, single component)
|
|
91
|
+
- Split would require excessive cross-file imports
|
|
92
|
+
- You can't name the splits clearly
|
|
93
|
+
- Split is purely to hit a line count target
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Directory Structure Principles
|
|
98
|
+
|
|
99
|
+
### Feature-Based vs Layer-Based
|
|
100
|
+
|
|
101
|
+
**Feature-based (preferred for most projects):**
|
|
102
|
+
```
|
|
103
|
+
src/
|
|
104
|
+
orders/
|
|
105
|
+
OrderList.tsx
|
|
106
|
+
OrderDetail.tsx
|
|
107
|
+
order-service.ts
|
|
108
|
+
order-types.ts
|
|
109
|
+
__tests__/
|
|
110
|
+
users/
|
|
111
|
+
UserProfile.tsx
|
|
112
|
+
user-service.ts
|
|
113
|
+
user-types.ts
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
**Layer-based (common but often problematic):**
|
|
117
|
+
```
|
|
118
|
+
src/
|
|
119
|
+
components/
|
|
120
|
+
OrderList.tsx
|
|
121
|
+
OrderDetail.tsx
|
|
122
|
+
UserProfile.tsx
|
|
123
|
+
services/
|
|
124
|
+
order-service.ts
|
|
125
|
+
user-service.ts
|
|
126
|
+
types/
|
|
127
|
+
order-types.ts
|
|
128
|
+
user-types.ts
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**Why feature-based is often better:**
|
|
132
|
+
- Related code stays together (colocation)
|
|
133
|
+
- Easier to understand a feature in isolation
|
|
134
|
+
- Simpler to extract features to separate packages
|
|
135
|
+
- Reduces cross-directory navigation
|
|
136
|
+
|
|
137
|
+
**When layer-based makes sense:**
|
|
138
|
+
- Very small projects (few features)
|
|
139
|
+
- Framework mandates it (some older MVC frameworks)
|
|
140
|
+
- Truly shared layers (database, infrastructure)
|
|
141
|
+
|
|
142
|
+
### Directory Depth
|
|
143
|
+
|
|
144
|
+
| Depth | Example | Assessment |
|
|
145
|
+
|-------|---------|------------|
|
|
146
|
+
| 2 levels | `src/orders/` | Simple, easy to navigate |
|
|
147
|
+
| 3 levels | `src/features/orders/` | Still manageable |
|
|
148
|
+
| 4 levels | `src/app/features/orders/components/` | Getting deep |
|
|
149
|
+
| 5+ levels | `src/app/modules/features/orders/components/list/` | Navigation burden |
|
|
150
|
+
|
|
151
|
+
**Keep depth shallow by:**
|
|
152
|
+
- Avoiding unnecessary grouping folders
|
|
153
|
+
- Using flat structure within features
|
|
154
|
+
- Extracting to separate packages instead of deeper nesting
|
|
155
|
+
|
|
156
|
+
### Colocation Principle
|
|
157
|
+
|
|
158
|
+
**Keep together things that change together:**
|
|
159
|
+
- Component and its styles
|
|
160
|
+
- Component and its tests
|
|
161
|
+
- Feature and its types
|
|
162
|
+
- Route and its loader/action
|
|
163
|
+
|
|
164
|
+
**Benefits:**
|
|
165
|
+
- Easier to find related files
|
|
166
|
+
- Simpler imports (relative paths)
|
|
167
|
+
- Clear ownership boundaries
|
|
168
|
+
- Easier to move or delete features
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Index/Barrel Files
|
|
173
|
+
|
|
174
|
+
### When to Use
|
|
175
|
+
|
|
176
|
+
**Use barrel files (`index.ts`) for:**
|
|
177
|
+
- Public API of a module/package
|
|
178
|
+
- Explicit export of what's available externally
|
|
179
|
+
- Re-exporting from multiple internal files
|
|
180
|
+
|
|
181
|
+
**Avoid barrel files for:**
|
|
182
|
+
- Every directory (creates maintenance burden)
|
|
183
|
+
- Internal implementation details
|
|
184
|
+
- When they cause circular dependencies
|
|
185
|
+
|
|
186
|
+
### Barrel File Patterns
|
|
187
|
+
|
|
188
|
+
**Good: Clear public API**
|
|
189
|
+
```typescript
|
|
190
|
+
// features/orders/index.ts
|
|
191
|
+
export { OrderList } from './OrderList';
|
|
192
|
+
export { OrderDetail } from './OrderDetail';
|
|
193
|
+
export type { Order, OrderStatus } from './order-types';
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
**Problematic: Re-exporting everything**
|
|
197
|
+
```typescript
|
|
198
|
+
// Don't: barrel that hides structure
|
|
199
|
+
export * from './OrderList';
|
|
200
|
+
export * from './OrderDetail';
|
|
201
|
+
export * from './order-service';
|
|
202
|
+
export * from './order-types';
|
|
203
|
+
// Consumer can't tell what's public vs internal
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## Common Organizational Patterns
|
|
209
|
+
|
|
210
|
+
### Shared/Common Code
|
|
211
|
+
|
|
212
|
+
**Organize by domain, not by type:**
|
|
213
|
+
```
|
|
214
|
+
src/
|
|
215
|
+
shared/
|
|
216
|
+
date-utils/ # Date formatting, parsing
|
|
217
|
+
validation/ # Validation helpers
|
|
218
|
+
api-client/ # HTTP client wrapper
|
|
219
|
+
ui-components/ # Truly shared UI
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
**Not by vague grouping:**
|
|
223
|
+
```
|
|
224
|
+
src/
|
|
225
|
+
shared/
|
|
226
|
+
utils/ # Unclear what's here
|
|
227
|
+
helpers/ # Same problem
|
|
228
|
+
common/ # Too vague
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
### Test File Placement
|
|
232
|
+
|
|
233
|
+
**Option 1: Colocated (often preferred)**
|
|
234
|
+
```
|
|
235
|
+
src/
|
|
236
|
+
orders/
|
|
237
|
+
OrderList.tsx
|
|
238
|
+
OrderList.test.tsx # Right next to source
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
**Option 2: Parallel structure**
|
|
242
|
+
```
|
|
243
|
+
src/
|
|
244
|
+
orders/
|
|
245
|
+
OrderList.tsx
|
|
246
|
+
tests/
|
|
247
|
+
orders/
|
|
248
|
+
OrderList.test.tsx # Mirrors source structure
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
**Colocated benefits:**
|
|
252
|
+
- Obvious which tests exist
|
|
253
|
+
- Easy to update tests with code
|
|
254
|
+
- Clear when tests are missing
|
|
255
|
+
|
|
256
|
+
**Parallel benefits:**
|
|
257
|
+
- Clean separation of concerns
|
|
258
|
+
- Easier to exclude from production builds
|
|
259
|
+
- Some frameworks require it
|
|
260
|
+
|
|
261
|
+
### Configuration Files
|
|
262
|
+
|
|
263
|
+
**Project root for tool configs:**
|
|
264
|
+
```
|
|
265
|
+
project/
|
|
266
|
+
package.json
|
|
267
|
+
tsconfig.json
|
|
268
|
+
.eslintrc.js
|
|
269
|
+
.prettierrc
|
|
270
|
+
src/
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
**Feature config with feature:**
|
|
274
|
+
```
|
|
275
|
+
src/
|
|
276
|
+
orders/
|
|
277
|
+
order-config.ts # Feature-specific configuration
|
|
278
|
+
```
|