specweave 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/INSTALL.md +848 -0
- package/LICENSE +21 -0
- package/README.md +675 -0
- package/SPECWEAVE.md +665 -0
- package/bin/install-agents.sh +57 -0
- package/bin/install-all.sh +49 -0
- package/bin/install-commands.sh +56 -0
- package/bin/install-skills.sh +57 -0
- package/bin/specweave.js +81 -0
- package/dist/adapters/adapter-base.d.ts +50 -0
- package/dist/adapters/adapter-base.d.ts.map +1 -0
- package/dist/adapters/adapter-base.js +146 -0
- package/dist/adapters/adapter-base.js.map +1 -0
- package/dist/adapters/adapter-interface.d.ts +108 -0
- package/dist/adapters/adapter-interface.d.ts.map +1 -0
- package/dist/adapters/adapter-interface.js +9 -0
- package/dist/adapters/adapter-interface.js.map +1 -0
- package/dist/adapters/claude/adapter.d.ts +54 -0
- package/dist/adapters/claude/adapter.d.ts.map +1 -0
- package/dist/adapters/claude/adapter.js +184 -0
- package/dist/adapters/claude/adapter.js.map +1 -0
- package/dist/adapters/copilot/adapter.d.ts +42 -0
- package/dist/adapters/copilot/adapter.d.ts.map +1 -0
- package/dist/adapters/copilot/adapter.js +239 -0
- package/dist/adapters/copilot/adapter.js.map +1 -0
- package/dist/adapters/cursor/adapter.d.ts +42 -0
- package/dist/adapters/cursor/adapter.d.ts.map +1 -0
- package/dist/adapters/cursor/adapter.js +297 -0
- package/dist/adapters/cursor/adapter.js.map +1 -0
- package/dist/adapters/generic/adapter.d.ts +40 -0
- package/dist/adapters/generic/adapter.d.ts.map +1 -0
- package/dist/adapters/generic/adapter.js +155 -0
- package/dist/adapters/generic/adapter.js.map +1 -0
- package/dist/cli/commands/init.d.ts +6 -0
- package/dist/cli/commands/init.d.ts.map +1 -0
- package/dist/cli/commands/init.js +247 -0
- package/dist/cli/commands/init.js.map +1 -0
- package/dist/cli/commands/install.d.ts +7 -0
- package/dist/cli/commands/install.d.ts.map +1 -0
- package/dist/cli/commands/install.js +160 -0
- package/dist/cli/commands/install.js.map +1 -0
- package/dist/cli/commands/list.d.ts +6 -0
- package/dist/cli/commands/list.d.ts.map +1 -0
- package/dist/cli/commands/list.js +154 -0
- package/dist/cli/commands/list.js.map +1 -0
- package/package.json +90 -0
- package/src/adapters/README.md +312 -0
- package/src/adapters/adapter-base.ts +146 -0
- package/src/adapters/adapter-interface.ts +120 -0
- package/src/adapters/claude/README.md +241 -0
- package/src/adapters/claude/adapter.ts +157 -0
- package/src/adapters/copilot/.github/copilot/instructions.md +376 -0
- package/src/adapters/copilot/README.md +200 -0
- package/src/adapters/copilot/adapter.ts +210 -0
- package/src/adapters/cursor/.cursor/context/docs-context.md +62 -0
- package/src/adapters/cursor/.cursor/context/increments-context.md +71 -0
- package/src/adapters/cursor/.cursor/context/strategy-context.md +73 -0
- package/src/adapters/cursor/.cursor/context/tests-context.md +89 -0
- package/src/adapters/cursor/.cursorrules +325 -0
- package/src/adapters/cursor/README.md +243 -0
- package/src/adapters/cursor/adapter.ts +268 -0
- package/src/adapters/generic/README.md +277 -0
- package/src/adapters/generic/SPECWEAVE-MANUAL.md +676 -0
- package/src/adapters/generic/adapter.ts +159 -0
- package/src/adapters/registry.yaml +126 -0
- package/src/agents/architect/AGENT.md +416 -0
- package/src/agents/devops/AGENT.md +1738 -0
- package/src/agents/docs-writer/AGENT.md +239 -0
- package/src/agents/performance/AGENT.md +228 -0
- package/src/agents/pm/AGENT.md +751 -0
- package/src/agents/qa-lead/AGENT.md +150 -0
- package/src/agents/security/AGENT.md +179 -0
- package/src/agents/sre/AGENT.md +582 -0
- package/src/agents/sre/modules/backend-diagnostics.md +481 -0
- package/src/agents/sre/modules/database-diagnostics.md +509 -0
- package/src/agents/sre/modules/infrastructure.md +561 -0
- package/src/agents/sre/modules/monitoring.md +439 -0
- package/src/agents/sre/modules/security-incidents.md +421 -0
- package/src/agents/sre/modules/ui-diagnostics.md +302 -0
- package/src/agents/sre/playbooks/01-high-cpu-usage.md +204 -0
- package/src/agents/sre/playbooks/02-database-deadlock.md +241 -0
- package/src/agents/sre/playbooks/03-memory-leak.md +252 -0
- package/src/agents/sre/playbooks/04-slow-api-response.md +269 -0
- package/src/agents/sre/playbooks/05-ddos-attack.md +293 -0
- package/src/agents/sre/playbooks/06-disk-full.md +314 -0
- package/src/agents/sre/playbooks/07-service-down.md +333 -0
- package/src/agents/sre/playbooks/08-data-corruption.md +337 -0
- package/src/agents/sre/playbooks/09-cascade-failure.md +430 -0
- package/src/agents/sre/playbooks/10-rate-limit-exceeded.md +464 -0
- package/src/agents/sre/scripts/health-check.sh +230 -0
- package/src/agents/sre/scripts/log-analyzer.py +213 -0
- package/src/agents/sre/scripts/metrics-collector.sh +294 -0
- package/src/agents/sre/scripts/trace-analyzer.js +257 -0
- package/src/agents/sre/templates/incident-report.md +249 -0
- package/src/agents/sre/templates/mitigation-plan.md +375 -0
- package/src/agents/sre/templates/post-mortem.md +418 -0
- package/src/agents/sre/templates/runbook-template.md +412 -0
- package/src/agents/tech-lead/AGENT.md +263 -0
- package/src/commands/add-tasks.md +176 -0
- package/src/commands/close-increment.md +347 -0
- package/src/commands/create-increment.md +223 -0
- package/src/commands/create-project.md +528 -0
- package/src/commands/generate-docs.md +623 -0
- package/src/commands/list-increments.md +180 -0
- package/src/commands/review-docs.md +331 -0
- package/src/commands/start-increment.md +139 -0
- package/src/commands/sync-github.md +115 -0
- package/src/commands/validate-increment.md +800 -0
- package/src/hooks/README.md +252 -0
- package/src/hooks/docs-changed.sh +59 -0
- package/src/hooks/human-input-required.sh +55 -0
- package/src/hooks/post-task-completion.sh +57 -0
- package/src/hooks/pre-implementation.sh +47 -0
- package/src/skills/ado-sync/README.md +449 -0
- package/src/skills/ado-sync/SKILL.md +245 -0
- package/src/skills/ado-sync/test-cases/test-1.yaml +9 -0
- package/src/skills/ado-sync/test-cases/test-2.yaml +8 -0
- package/src/skills/ado-sync/test-cases/test-3.yaml +9 -0
- package/src/skills/bmad-method-expert/SKILL.md +628 -0
- package/src/skills/bmad-method-expert/scripts/analyze-project.js +318 -0
- package/src/skills/bmad-method-expert/scripts/check-setup.js +208 -0
- package/src/skills/bmad-method-expert/scripts/generate-template.js +1149 -0
- package/src/skills/bmad-method-expert/scripts/validate-documents.js +340 -0
- package/src/skills/bmad-method-expert/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/bmad-method-expert/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/bmad-method-expert/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/brownfield-analyzer/SKILL.md +523 -0
- package/src/skills/brownfield-analyzer/test-cases/test-1-basic-analysis.yaml +48 -0
- package/src/skills/brownfield-analyzer/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/brownfield-analyzer/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/brownfield-onboarder/SKILL.md +625 -0
- package/src/skills/brownfield-onboarder/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/brownfield-onboarder/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/brownfield-onboarder/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/calendar-system/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/calendar-system/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/calendar-system/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/context-loader/SKILL.md +734 -0
- package/src/skills/context-loader/test-cases/test-1-basic-loading.yaml +39 -0
- package/src/skills/context-loader/test-cases/test-2-token-budget-exceeded.yaml +44 -0
- package/src/skills/context-loader/test-cases/test-3-section-anchors.yaml +45 -0
- package/src/skills/context-optimizer/SKILL.md +618 -0
- package/src/skills/context-optimizer/test-cases/test-1-bug-fix-narrow.yaml +97 -0
- package/src/skills/context-optimizer/test-cases/test-2-feature-focused.yaml +109 -0
- package/src/skills/context-optimizer/test-cases/test-3-architecture-broad.yaml +98 -0
- package/src/skills/cost-optimizer/SKILL.md +190 -0
- package/src/skills/cost-optimizer/test-cases/test-1-basic-comparison.yaml +75 -0
- package/src/skills/cost-optimizer/test-cases/test-2-budget-constraint.yaml +52 -0
- package/src/skills/cost-optimizer/test-cases/test-3-scale-requirement.yaml +63 -0
- package/src/skills/cost-optimizer/test-results/README.md +46 -0
- package/src/skills/design-system-architect/SKILL.md +107 -0
- package/src/skills/design-system-architect/test-cases/test-1-token-structure.yaml +23 -0
- package/src/skills/design-system-architect/test-cases/test-2-component-hierarchy.yaml +24 -0
- package/src/skills/design-system-architect/test-cases/test-3-accessibility-checklist.yaml +23 -0
- package/src/skills/diagrams-architect/SKILL.md +763 -0
- package/src/skills/diagrams-generator/SKILL.md +25 -0
- package/src/skills/diagrams-generator/test-cases/test-1.yaml +9 -0
- package/src/skills/diagrams-generator/test-cases/test-2.yaml +9 -0
- package/src/skills/diagrams-generator/test-cases/test-3.yaml +8 -0
- package/src/skills/docs-updater/README.md +48 -0
- package/src/skills/docs-updater/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/docs-updater/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/docs-updater/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/dotnet-backend/SKILL.md +250 -0
- package/src/skills/e2e-playwright/README.md +506 -0
- package/src/skills/e2e-playwright/SKILL.md +457 -0
- package/src/skills/e2e-playwright/execute.js +373 -0
- package/src/skills/e2e-playwright/lib/utils.js +514 -0
- package/src/skills/e2e-playwright/package.json +33 -0
- package/src/skills/e2e-playwright/test-cases/TC-001-basic-navigation.yaml +54 -0
- package/src/skills/e2e-playwright/test-cases/TC-002-form-interaction.yaml +64 -0
- package/src/skills/e2e-playwright/test-cases/TC-003-specweave-integration.yaml +74 -0
- package/src/skills/e2e-playwright/test-cases/TC-004-accessibility-check.yaml +98 -0
- package/src/skills/figma-designer/SKILL.md +149 -0
- package/src/skills/figma-implementer/SKILL.md +148 -0
- package/src/skills/figma-mcp-connector/SKILL.md +136 -0
- package/src/skills/figma-mcp-connector/test-cases/test-1-read-file-desktop.yaml +22 -0
- package/src/skills/figma-mcp-connector/test-cases/test-2-read-file-framelink.yaml +21 -0
- package/src/skills/figma-mcp-connector/test-cases/test-3-error-handling.yaml +18 -0
- package/src/skills/figma-to-code/SKILL.md +128 -0
- package/src/skills/figma-to-code/test-cases/test-1-token-generation.yaml +29 -0
- package/src/skills/figma-to-code/test-cases/test-2-component-generation.yaml +27 -0
- package/src/skills/figma-to-code/test-cases/test-3-typescript-generation.yaml +28 -0
- package/src/skills/frontend/SKILL.md +177 -0
- package/src/skills/github-sync/SKILL.md +252 -0
- package/src/skills/github-sync/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/github-sync/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/github-sync/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/hetzner-provisioner/README.md +308 -0
- package/src/skills/hetzner-provisioner/SKILL.md +251 -0
- package/src/skills/hetzner-provisioner/test-cases/test-1-basic-provision.yaml +71 -0
- package/src/skills/hetzner-provisioner/test-cases/test-2-postgres-provision.yaml +85 -0
- package/src/skills/hetzner-provisioner/test-cases/test-3-ssl-config.yaml +126 -0
- package/src/skills/hetzner-provisioner/test-results/README.md +259 -0
- package/src/skills/increment-planner/SKILL.md +889 -0
- package/src/skills/increment-planner/scripts/feature-utils.js +250 -0
- package/src/skills/increment-planner/test-cases/test-1-basic-feature.yaml +27 -0
- package/src/skills/increment-planner/test-cases/test-2-complex-feature.yaml +30 -0
- package/src/skills/increment-planner/test-cases/test-3-auto-numbering.yaml +24 -0
- package/src/skills/increment-quality-judge/SKILL.md +566 -0
- package/src/skills/increment-quality-judge/test-cases/test-1-good-spec.yaml +95 -0
- package/src/skills/increment-quality-judge/test-cases/test-2-poor-spec.yaml +108 -0
- package/src/skills/increment-quality-judge/test-cases/test-3-export-suggestions.yaml +87 -0
- package/src/skills/jira-sync/README.md +328 -0
- package/src/skills/jira-sync/SKILL.md +209 -0
- package/src/skills/jira-sync/test-cases/test-1.yaml +9 -0
- package/src/skills/jira-sync/test-cases/test-2.yaml +9 -0
- package/src/skills/jira-sync/test-cases/test-3.yaml +10 -0
- package/src/skills/nextjs/SKILL.md +176 -0
- package/src/skills/nodejs-backend/SKILL.md +181 -0
- package/src/skills/notification-system/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/notification-system/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/notification-system/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/python-backend/SKILL.md +226 -0
- package/src/skills/role-orchestrator/README.md +197 -0
- package/src/skills/role-orchestrator/SKILL.md +1184 -0
- package/src/skills/role-orchestrator/test-cases/test-1-simple-product.yaml +98 -0
- package/src/skills/role-orchestrator/test-cases/test-2-quality-gate-failure.yaml +73 -0
- package/src/skills/role-orchestrator/test-cases/test-3-security-workflow.yaml +121 -0
- package/src/skills/role-orchestrator/test-cases/test-4-parallel-execution.yaml +145 -0
- package/src/skills/role-orchestrator/test-cases/test-5-feedback-loops.yaml +149 -0
- package/src/skills/skill-creator/LICENSE.txt +202 -0
- package/src/skills/skill-creator/SKILL.md +209 -0
- package/src/skills/skill-creator/scripts/init_skill.py +303 -0
- package/src/skills/skill-creator/scripts/package_skill.py +110 -0
- package/src/skills/skill-creator/scripts/quick_validate.py +65 -0
- package/src/skills/skill-creator/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/skill-creator/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/skill-creator/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/skill-router/SKILL.md +497 -0
- package/src/skills/skill-router/test-cases/test-1-basic-routing.yaml +33 -0
- package/src/skills/skill-router/test-cases/test-2-ambiguous-request.yaml +42 -0
- package/src/skills/skill-router/test-cases/test-3-nested-orchestration.yaml +50 -0
- package/src/skills/spec-driven-brainstorming/README.md +264 -0
- package/src/skills/spec-driven-brainstorming/SKILL.md +439 -0
- package/src/skills/spec-driven-brainstorming/test-cases/TC-001-simple-idea-to-design.yaml +148 -0
- package/src/skills/spec-driven-brainstorming/test-cases/TC-002-complex-ultrathink-design.yaml +190 -0
- package/src/skills/spec-driven-brainstorming/test-cases/TC-003-unclear-requirements-socratic.yaml +233 -0
- package/src/skills/spec-driven-debugging/README.md +479 -0
- package/src/skills/spec-driven-debugging/SKILL.md +652 -0
- package/src/skills/spec-driven-debugging/test-cases/TC-001-simple-auth-bug.yaml +212 -0
- package/src/skills/spec-driven-debugging/test-cases/TC-002-race-condition-ultrathink.yaml +461 -0
- package/src/skills/spec-driven-debugging/test-cases/TC-003-brownfield-missing-spec.yaml +366 -0
- package/src/skills/spec-kit-expert/SKILL.md +1012 -0
- package/src/skills/spec-kit-expert/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/spec-kit-expert/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/spec-kit-expert/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/specweave-ado-mapper/SKILL.md +501 -0
- package/src/skills/specweave-detector/SKILL.md +420 -0
- package/src/skills/specweave-detector/test-cases/test-1-basic-detection.yaml +37 -0
- package/src/skills/specweave-detector/test-cases/test-2-missing-config.yaml +37 -0
- package/src/skills/specweave-detector/test-cases/test-3-non-specweave-project.yaml +34 -0
- package/src/skills/specweave-jira-mapper/SKILL.md +500 -0
- package/src/skills/stripe-integrator/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/stripe-integrator/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/stripe-integrator/test-cases/test-3-placeholder.yaml +12 -0
- package/src/skills/task-builder/README.md +90 -0
- package/src/skills/task-builder/test-cases/test-1-placeholder.yaml +12 -0
- package/src/skills/task-builder/test-cases/test-2-placeholder.yaml +12 -0
- package/src/skills/task-builder/test-cases/test-3-placeholder.yaml +12 -0
- package/src/templates/.env.example +144 -0
- package/src/templates/.gitignore.template +81 -0
- package/src/templates/CLAUDE.md.template +383 -0
- package/src/templates/README.md.template +240 -0
- package/src/templates/config.yaml +333 -0
- package/src/templates/docs/README.md +124 -0
- package/src/templates/docs/adr-template.md +118 -0
- package/src/templates/docs/hld-template.md +220 -0
- package/src/templates/docs/lld-template.md +580 -0
- package/src/templates/docs/prd-template.md +132 -0
- package/src/templates/docs/rfc-template.md +229 -0
- package/src/templates/docs/runbook-template.md +298 -0
- package/src/templates/environments/minimal/.env.production +16 -0
- package/src/templates/environments/minimal/README.md +54 -0
- package/src/templates/environments/minimal/deploy-production.yml +52 -0
- package/src/templates/environments/progressive/.env.qa +28 -0
- package/src/templates/environments/progressive/README.md +129 -0
- package/src/templates/environments/progressive/deploy-production.yml +93 -0
- package/src/templates/environments/progressive/deploy-qa.yml +62 -0
- package/src/templates/environments/progressive/deploy-staging.yml +67 -0
- package/src/templates/environments/standard/.env.development +20 -0
- package/src/templates/environments/standard/.env.production +30 -0
- package/src/templates/environments/standard/.env.staging +23 -0
- package/src/templates/environments/standard/README.md +97 -0
- package/src/templates/environments/standard/deploy-production.yml +68 -0
- package/src/templates/environments/standard/deploy-staging.yml +61 -0
- package/src/templates/environments/standard/docker-compose.yml +43 -0
- package/src/templates/increment-metadata-template.yaml +138 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Claude Code Adapter
|
|
3
|
+
*
|
|
4
|
+
* Full automation adapter for Claude Code.
|
|
5
|
+
* Provides best-in-class experience with native skills, agents, hooks, and slash commands.
|
|
6
|
+
*
|
|
7
|
+
* This is the BASELINE adapter - all other adapters try to approximate this experience
|
|
8
|
+
* within their tool's capabilities.
|
|
9
|
+
*/
|
|
10
|
+
import { AdapterBase } from '../adapter-base';
|
|
11
|
+
import { AdapterOptions, AdapterFile } from '../adapter-interface';
|
|
12
|
+
export declare class ClaudeAdapter extends AdapterBase {
|
|
13
|
+
name: string;
|
|
14
|
+
description: string;
|
|
15
|
+
automationLevel: "full";
|
|
16
|
+
/**
|
|
17
|
+
* Detect if Claude Code is available
|
|
18
|
+
*
|
|
19
|
+
* Checks for:
|
|
20
|
+
* - claude command in PATH
|
|
21
|
+
* - Claude Code CLI installation
|
|
22
|
+
*/
|
|
23
|
+
detect(): Promise<boolean>;
|
|
24
|
+
/**
|
|
25
|
+
* Get files to install for Claude adapter
|
|
26
|
+
*
|
|
27
|
+
* Claude adapter installs:
|
|
28
|
+
* - Skills to .claude/skills/ (auto-activating capabilities)
|
|
29
|
+
* - Agents to .claude/agents/ (specialized roles)
|
|
30
|
+
* - Commands to .claude/commands/ (slash commands)
|
|
31
|
+
* - Hooks to .claude/hooks/ (auto-update mechanisms)
|
|
32
|
+
*/
|
|
33
|
+
getFiles(): AdapterFile[];
|
|
34
|
+
/**
|
|
35
|
+
* Install Claude adapter
|
|
36
|
+
*
|
|
37
|
+
* Since SpecWeave was originally built for Claude Code, the "installation"
|
|
38
|
+
* is actually just ensuring the existing .claude/ structure is correct.
|
|
39
|
+
*
|
|
40
|
+
* Skills, agents, commands, hooks are installed separately via:
|
|
41
|
+
* - npm run install:skills
|
|
42
|
+
* - npm run install:agents
|
|
43
|
+
*/
|
|
44
|
+
install(options: AdapterOptions): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Post-installation instructions
|
|
47
|
+
*/
|
|
48
|
+
postInstall(options: AdapterOptions): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Get usage instructions for Claude adapter
|
|
51
|
+
*/
|
|
52
|
+
getInstructions(): string;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/claude/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnE,qBAAa,aAAc,SAAQ,WAAW;IAC5C,IAAI,SAAY;IAChB,WAAW,SAA0F;IACrG,eAAe,EAAG,MAAM,CAAU;IAElC;;;;;;OAMG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAUhC;;;;;;;;OAQG;IACH,QAAQ,IAAI,WAAW,EAAE;IAYzB;;;;;;;;;OASG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBrD;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACH,eAAe,IAAI,MAAM;CAsD1B"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Claude Code Adapter
|
|
4
|
+
*
|
|
5
|
+
* Full automation adapter for Claude Code.
|
|
6
|
+
* Provides best-in-class experience with native skills, agents, hooks, and slash commands.
|
|
7
|
+
*
|
|
8
|
+
* This is the BASELINE adapter - all other adapters try to approximate this experience
|
|
9
|
+
* within their tool's capabilities.
|
|
10
|
+
*/
|
|
11
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
14
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
15
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
16
|
+
}
|
|
17
|
+
Object.defineProperty(o, k2, desc);
|
|
18
|
+
}) : (function(o, m, k, k2) {
|
|
19
|
+
if (k2 === undefined) k2 = k;
|
|
20
|
+
o[k2] = m[k];
|
|
21
|
+
}));
|
|
22
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
23
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
24
|
+
}) : function(o, v) {
|
|
25
|
+
o["default"] = v;
|
|
26
|
+
});
|
|
27
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
28
|
+
var ownKeys = function(o) {
|
|
29
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
30
|
+
var ar = [];
|
|
31
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
32
|
+
return ar;
|
|
33
|
+
};
|
|
34
|
+
return ownKeys(o);
|
|
35
|
+
};
|
|
36
|
+
return function (mod) {
|
|
37
|
+
if (mod && mod.__esModule) return mod;
|
|
38
|
+
var result = {};
|
|
39
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
40
|
+
__setModuleDefault(result, mod);
|
|
41
|
+
return result;
|
|
42
|
+
};
|
|
43
|
+
})();
|
|
44
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
+
exports.ClaudeAdapter = void 0;
|
|
46
|
+
const path = __importStar(require("path"));
|
|
47
|
+
const fs = __importStar(require("fs-extra"));
|
|
48
|
+
const adapter_base_1 = require("../adapter-base");
|
|
49
|
+
class ClaudeAdapter extends adapter_base_1.AdapterBase {
|
|
50
|
+
constructor() {
|
|
51
|
+
super(...arguments);
|
|
52
|
+
this.name = 'claude';
|
|
53
|
+
this.description = 'Claude Code adapter - Full automation with skills, agents, hooks, and slash commands';
|
|
54
|
+
this.automationLevel = 'full';
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Detect if Claude Code is available
|
|
58
|
+
*
|
|
59
|
+
* Checks for:
|
|
60
|
+
* - claude command in PATH
|
|
61
|
+
* - Claude Code CLI installation
|
|
62
|
+
*/
|
|
63
|
+
async detect() {
|
|
64
|
+
// Check if claude CLI exists
|
|
65
|
+
const hasClaudeCLI = await this.commandExists('claude');
|
|
66
|
+
// Check if .claude directory exists (already using Claude)
|
|
67
|
+
const hasClaudeDir = await this.fileExists('.claude');
|
|
68
|
+
return hasClaudeCLI || hasClaudeDir;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Get files to install for Claude adapter
|
|
72
|
+
*
|
|
73
|
+
* Claude adapter installs:
|
|
74
|
+
* - Skills to .claude/skills/ (auto-activating capabilities)
|
|
75
|
+
* - Agents to .claude/agents/ (specialized roles)
|
|
76
|
+
* - Commands to .claude/commands/ (slash commands)
|
|
77
|
+
* - Hooks to .claude/hooks/ (auto-update mechanisms)
|
|
78
|
+
*/
|
|
79
|
+
getFiles() {
|
|
80
|
+
return [
|
|
81
|
+
{
|
|
82
|
+
sourcePath: 'README.md',
|
|
83
|
+
targetPath: '.claude/README.md',
|
|
84
|
+
description: 'Claude adapter documentation'
|
|
85
|
+
}
|
|
86
|
+
// Note: Skills, agents, commands, hooks are installed via npm scripts
|
|
87
|
+
// (install:skills, install:agents) - not copied here
|
|
88
|
+
];
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Install Claude adapter
|
|
92
|
+
*
|
|
93
|
+
* Since SpecWeave was originally built for Claude Code, the "installation"
|
|
94
|
+
* is actually just ensuring the existing .claude/ structure is correct.
|
|
95
|
+
*
|
|
96
|
+
* Skills, agents, commands, hooks are installed separately via:
|
|
97
|
+
* - npm run install:skills
|
|
98
|
+
* - npm run install:agents
|
|
99
|
+
*/
|
|
100
|
+
async install(options) {
|
|
101
|
+
console.log('\n📦 Installing Claude Code Adapter (Full Automation)\n');
|
|
102
|
+
// Ensure .claude directory exists
|
|
103
|
+
const claudeDir = path.join(options.projectPath, '.claude');
|
|
104
|
+
await fs.ensureDir(claudeDir);
|
|
105
|
+
// Create subdirectories
|
|
106
|
+
await fs.ensureDir(path.join(claudeDir, 'skills'));
|
|
107
|
+
await fs.ensureDir(path.join(claudeDir, 'agents'));
|
|
108
|
+
await fs.ensureDir(path.join(claudeDir, 'commands'));
|
|
109
|
+
await fs.ensureDir(path.join(claudeDir, 'hooks'));
|
|
110
|
+
// Copy README
|
|
111
|
+
await super.install(options);
|
|
112
|
+
console.log('\n✨ Claude adapter structure created!');
|
|
113
|
+
console.log('\n📋 Next steps:');
|
|
114
|
+
console.log(' 1. Install skills: npm run install:skills');
|
|
115
|
+
console.log(' 2. Install agents: npm run install:agents');
|
|
116
|
+
console.log(' 3. Skills will auto-activate when relevant');
|
|
117
|
+
console.log(' 4. Use slash commands: /create-increment, /review-docs, etc.');
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Post-installation instructions
|
|
121
|
+
*/
|
|
122
|
+
async postInstall(options) {
|
|
123
|
+
console.log(this.getInstructions());
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Get usage instructions for Claude adapter
|
|
127
|
+
*/
|
|
128
|
+
getInstructions() {
|
|
129
|
+
return `
|
|
130
|
+
|
|
131
|
+
================================================================
|
|
132
|
+
Claude Code Adapter - Full Automation
|
|
133
|
+
================================================================
|
|
134
|
+
|
|
135
|
+
Your project is now configured for Claude Code with FULL automation!
|
|
136
|
+
|
|
137
|
+
QUICK START:
|
|
138
|
+
|
|
139
|
+
1. Install components:
|
|
140
|
+
npm run install:skills # Install all skills
|
|
141
|
+
npm run install:agents # Install all agents
|
|
142
|
+
|
|
143
|
+
2. Create your first feature:
|
|
144
|
+
Just ask Claude: "Create increment for user authentication"
|
|
145
|
+
- specweave-detector skill activates automatically
|
|
146
|
+
- skill-router routes to increment-planner
|
|
147
|
+
- PM agent creates spec.md
|
|
148
|
+
- Architect agent creates plan.md
|
|
149
|
+
|
|
150
|
+
3. Use slash commands:
|
|
151
|
+
/create-increment "payment processing"
|
|
152
|
+
/review-docs
|
|
153
|
+
/sync-github
|
|
154
|
+
|
|
155
|
+
WHAT THIS PROVIDES:
|
|
156
|
+
|
|
157
|
+
- Skills (Auto-Activating): specweave-detector, skill-router, context-loader, increment-planner
|
|
158
|
+
- Agents (Specialized Roles): PM, Architect, DevOps, QA, Security, and 14 more
|
|
159
|
+
- Slash Commands: /create-increment, /review-docs, /sync-github, /create-project
|
|
160
|
+
- Hooks (Auto-Update): post-task-completion, pre-implementation, docs-changed
|
|
161
|
+
|
|
162
|
+
WHY CLAUDE CODE IS BEST:
|
|
163
|
+
|
|
164
|
+
Anthropic Sets Standards (MCP, Skills, Agents) that provide superior results:
|
|
165
|
+
- MCP Protocol: Native context management, efficient, standardized
|
|
166
|
+
- Skills + Agents: Proven patterns, auto-activation, role-based, separate contexts
|
|
167
|
+
- Native Tools: Direct file access, real-time execution
|
|
168
|
+
- Result: Superior accuracy, speed, and developer UX
|
|
169
|
+
|
|
170
|
+
DOCUMENTATION:
|
|
171
|
+
|
|
172
|
+
- SPECWEAVE.md: Complete development guide
|
|
173
|
+
- .specweave/docs/: Project documentation (5-pillar)
|
|
174
|
+
- src/skills/: All available skills
|
|
175
|
+
- src/agents/: All available agents
|
|
176
|
+
|
|
177
|
+
You're ready to build with SpecWeave on Claude Code!
|
|
178
|
+
|
|
179
|
+
For complete documentation, see: .claude/README.md
|
|
180
|
+
`;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
exports.ClaudeAdapter = ClaudeAdapter;
|
|
184
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/claude/adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAC7B,6CAA+B;AAC/B,kDAA8C;AAG9C,MAAa,aAAc,SAAQ,0BAAW;IAA9C;;QACE,SAAI,GAAG,QAAQ,CAAC;QAChB,gBAAW,GAAG,sFAAsF,CAAC;QACrG,oBAAe,GAAG,MAAe,CAAC;IA0IpC,CAAC;IAxIC;;;;;;OAMG;IACH,KAAK,CAAC,MAAM;QACV,6BAA6B;QAC7B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAExD,2DAA2D;QAC3D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAEtD,OAAO,YAAY,IAAI,YAAY,CAAC;IACtC,CAAC;IAED;;;;;;;;OAQG;IACH,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,mBAAmB;gBAC/B,WAAW,EAAE,8BAA8B;aAC5C;YACD,sEAAsE;YACtE,qDAAqD;SACtD,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAEvE,kCAAkC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC5D,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAE9B,wBAAwB;QACxB,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;QACrD,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAElD,cAAc;QACd,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE7B,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;QACrD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,OAAuB;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAmDN,CAAC;IACJ,CAAC;CACF;AA7ID,sCA6IC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitHub Copilot Adapter
|
|
3
|
+
*
|
|
4
|
+
* Basic automation adapter for GitHub Copilot.
|
|
5
|
+
* Provides workspace instructions that Copilot reads for context and suggestions.
|
|
6
|
+
*
|
|
7
|
+
* Since GitHub Copilot has limited configuration (workspace instructions only),
|
|
8
|
+
* this adapter focuses on clear, structured guidance that Copilot can use
|
|
9
|
+
* to provide better code suggestions and completions.
|
|
10
|
+
*/
|
|
11
|
+
import { AdapterBase } from '../adapter-base';
|
|
12
|
+
import { AdapterOptions, AdapterFile } from '../adapter-interface';
|
|
13
|
+
export declare class CopilotAdapter extends AdapterBase {
|
|
14
|
+
name: string;
|
|
15
|
+
description: string;
|
|
16
|
+
automationLevel: "basic";
|
|
17
|
+
/**
|
|
18
|
+
* Detect if GitHub Copilot is available
|
|
19
|
+
*
|
|
20
|
+
* Checks for:
|
|
21
|
+
* - .github/copilot/instructions.md exists
|
|
22
|
+
* - VS Code with Copilot extension
|
|
23
|
+
*/
|
|
24
|
+
detect(): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Get files to install for Copilot adapter
|
|
27
|
+
*/
|
|
28
|
+
getFiles(): AdapterFile[];
|
|
29
|
+
/**
|
|
30
|
+
* Install Copilot adapter
|
|
31
|
+
*/
|
|
32
|
+
install(options: AdapterOptions): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Post-installation instructions
|
|
35
|
+
*/
|
|
36
|
+
postInstall(options: AdapterOptions): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Get usage instructions for Copilot adapter
|
|
39
|
+
*/
|
|
40
|
+
getInstructions(): string;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/copilot/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnE,qBAAa,cAAe,SAAQ,WAAW;IAC7C,IAAI,SAAa;IACjB,WAAW,SAA2E;IACtF,eAAe,EAAG,OAAO,CAAU;IAEnC;;;;;;OAMG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAShC;;OAEG;IACH,QAAQ,IAAI,WAAW,EAAE;IAezB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAerD;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACH,eAAe,IAAI,MAAM;CA8H1B"}
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* GitHub Copilot Adapter
|
|
4
|
+
*
|
|
5
|
+
* Basic automation adapter for GitHub Copilot.
|
|
6
|
+
* Provides workspace instructions that Copilot reads for context and suggestions.
|
|
7
|
+
*
|
|
8
|
+
* Since GitHub Copilot has limited configuration (workspace instructions only),
|
|
9
|
+
* this adapter focuses on clear, structured guidance that Copilot can use
|
|
10
|
+
* to provide better code suggestions and completions.
|
|
11
|
+
*/
|
|
12
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
15
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
16
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
17
|
+
}
|
|
18
|
+
Object.defineProperty(o, k2, desc);
|
|
19
|
+
}) : (function(o, m, k, k2) {
|
|
20
|
+
if (k2 === undefined) k2 = k;
|
|
21
|
+
o[k2] = m[k];
|
|
22
|
+
}));
|
|
23
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
24
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
25
|
+
}) : function(o, v) {
|
|
26
|
+
o["default"] = v;
|
|
27
|
+
});
|
|
28
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
29
|
+
var ownKeys = function(o) {
|
|
30
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
31
|
+
var ar = [];
|
|
32
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
33
|
+
return ar;
|
|
34
|
+
};
|
|
35
|
+
return ownKeys(o);
|
|
36
|
+
};
|
|
37
|
+
return function (mod) {
|
|
38
|
+
if (mod && mod.__esModule) return mod;
|
|
39
|
+
var result = {};
|
|
40
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
41
|
+
__setModuleDefault(result, mod);
|
|
42
|
+
return result;
|
|
43
|
+
};
|
|
44
|
+
})();
|
|
45
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.CopilotAdapter = void 0;
|
|
47
|
+
const path = __importStar(require("path"));
|
|
48
|
+
const fs = __importStar(require("fs-extra"));
|
|
49
|
+
const adapter_base_1 = require("../adapter-base");
|
|
50
|
+
class CopilotAdapter extends adapter_base_1.AdapterBase {
|
|
51
|
+
constructor() {
|
|
52
|
+
super(...arguments);
|
|
53
|
+
this.name = 'copilot';
|
|
54
|
+
this.description = 'GitHub Copilot adapter - Basic automation with workspace instructions';
|
|
55
|
+
this.automationLevel = 'basic';
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Detect if GitHub Copilot is available
|
|
59
|
+
*
|
|
60
|
+
* Checks for:
|
|
61
|
+
* - .github/copilot/instructions.md exists
|
|
62
|
+
* - VS Code with Copilot extension
|
|
63
|
+
*/
|
|
64
|
+
async detect() {
|
|
65
|
+
const hasInstructions = await this.fileExists('.github/copilot/instructions.md');
|
|
66
|
+
const hasGitHubDir = await this.fileExists('.github');
|
|
67
|
+
// Check for VS Code Copilot extension (best effort)
|
|
68
|
+
// This is approximate - Copilot might be installed but we can't detect reliably
|
|
69
|
+
return hasInstructions || hasGitHubDir;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Get files to install for Copilot adapter
|
|
73
|
+
*/
|
|
74
|
+
getFiles() {
|
|
75
|
+
return [
|
|
76
|
+
{
|
|
77
|
+
sourcePath: '.github/copilot/instructions.md',
|
|
78
|
+
targetPath: '.github/copilot/instructions.md',
|
|
79
|
+
description: 'GitHub Copilot workspace instructions'
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
sourcePath: 'README.md',
|
|
83
|
+
targetPath: '.github/copilot/README.md',
|
|
84
|
+
description: 'Copilot adapter documentation'
|
|
85
|
+
}
|
|
86
|
+
];
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Install Copilot adapter
|
|
90
|
+
*/
|
|
91
|
+
async install(options) {
|
|
92
|
+
console.log('\n📦 Installing GitHub Copilot Adapter (Basic Automation)\n');
|
|
93
|
+
// Ensure .github/copilot directory exists
|
|
94
|
+
const copilotDir = path.join(options.projectPath, '.github', 'copilot');
|
|
95
|
+
await fs.ensureDir(copilotDir);
|
|
96
|
+
// Copy files
|
|
97
|
+
await super.install(options);
|
|
98
|
+
console.log('\n✨ Copilot adapter installed!');
|
|
99
|
+
console.log('\n📋 Files created:');
|
|
100
|
+
console.log(' - .github/copilot/instructions.md (workspace guidance)');
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Post-installation instructions
|
|
104
|
+
*/
|
|
105
|
+
async postInstall(options) {
|
|
106
|
+
console.log(this.getInstructions());
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Get usage instructions for Copilot adapter
|
|
110
|
+
*/
|
|
111
|
+
getInstructions() {
|
|
112
|
+
return `
|
|
113
|
+
================================================================
|
|
114
|
+
GitHub Copilot Adapter - Basic Automation
|
|
115
|
+
================================================================
|
|
116
|
+
|
|
117
|
+
Your project is now configured for GitHub Copilot!
|
|
118
|
+
|
|
119
|
+
WHAT THIS PROVIDES:
|
|
120
|
+
|
|
121
|
+
- Workspace Instructions (.github/copilot/instructions.md)
|
|
122
|
+
- Project overview (SpecWeave framework)
|
|
123
|
+
- Workflow guidance (creating increments)
|
|
124
|
+
- Context manifest explanation
|
|
125
|
+
- File structure reference
|
|
126
|
+
|
|
127
|
+
- Better Code Suggestions
|
|
128
|
+
- Copilot reads workspace instructions
|
|
129
|
+
- Suggests code following SpecWeave patterns
|
|
130
|
+
- Understands project structure
|
|
131
|
+
|
|
132
|
+
UNDERSTANDING THE DIFFERENCE:
|
|
133
|
+
|
|
134
|
+
Claude Code (Full Automation):
|
|
135
|
+
- Native skills (auto-activate)
|
|
136
|
+
- Native agents (separate context windows)
|
|
137
|
+
- Native hooks (auto-update docs)
|
|
138
|
+
- Slash commands
|
|
139
|
+
|
|
140
|
+
Cursor (Semi-Automation):
|
|
141
|
+
- Simulated skills (.cursorrules)
|
|
142
|
+
- Simulated agents (manual roles)
|
|
143
|
+
- @ context shortcuts
|
|
144
|
+
|
|
145
|
+
Copilot (Basic Automation - This Adapter):
|
|
146
|
+
- Workspace instructions only
|
|
147
|
+
- Better code suggestions
|
|
148
|
+
- No skills, agents, hooks, or commands
|
|
149
|
+
- Manual workflow with AI assistance
|
|
150
|
+
|
|
151
|
+
HOW WE BRIDGE THE GAP:
|
|
152
|
+
|
|
153
|
+
GitHub Copilot doesn't support custom commands or complex
|
|
154
|
+
workflows. But it DOES read workspace instructions to provide
|
|
155
|
+
better code suggestions.
|
|
156
|
+
|
|
157
|
+
We provide clear instructions that teach Copilot about:
|
|
158
|
+
- SpecWeave structure (.specweave/ folders)
|
|
159
|
+
- File naming conventions (spec.md, plan.md, tasks.md)
|
|
160
|
+
- Context manifests (what files to reference)
|
|
161
|
+
- Best practices (technology-agnostic specs, etc.)
|
|
162
|
+
|
|
163
|
+
Result: Copilot suggests code that fits SpecWeave patterns!
|
|
164
|
+
|
|
165
|
+
HOW TO USE SPECWEAVE WITH COPILOT:
|
|
166
|
+
|
|
167
|
+
1. Copilot reads workspace instructions automatically
|
|
168
|
+
- No action needed - just open project in VS Code
|
|
169
|
+
- Copilot will suggest code following SpecWeave patterns
|
|
170
|
+
|
|
171
|
+
2. Create increments manually:
|
|
172
|
+
|
|
173
|
+
mkdir -p .specweave/increments/0001-user-auth
|
|
174
|
+
|
|
175
|
+
3. Reference context manifests:
|
|
176
|
+
Open context-manifest.yaml
|
|
177
|
+
→ Copilot sees which files are relevant
|
|
178
|
+
→ Provides better suggestions
|
|
179
|
+
|
|
180
|
+
4. Ask Copilot Chat for guidance:
|
|
181
|
+
"How do I create a spec.md following SpecWeave?"
|
|
182
|
+
"Generate plan.md for user authentication"
|
|
183
|
+
"What should go in context-manifest.yaml?"
|
|
184
|
+
|
|
185
|
+
5. Use Copilot inline suggestions:
|
|
186
|
+
Start typing in spec.md → Copilot suggests content
|
|
187
|
+
Following SpecWeave patterns from instructions.md
|
|
188
|
+
|
|
189
|
+
WORKFLOW EXAMPLE:
|
|
190
|
+
|
|
191
|
+
Creating a Feature:
|
|
192
|
+
|
|
193
|
+
1. Create increment folder:
|
|
194
|
+
|
|
195
|
+
mkdir -p .specweave/increments/0002-payments
|
|
196
|
+
cd .specweave/increments/0002-payments
|
|
197
|
+
|
|
198
|
+
2. Create spec.md:
|
|
199
|
+
- Open file, start typing frontmatter
|
|
200
|
+
- Copilot suggests SpecWeave structure
|
|
201
|
+
- Fill in user stories, acceptance criteria
|
|
202
|
+
|
|
203
|
+
3. Create plan.md:
|
|
204
|
+
- Reference spec.md (Copilot reads it)
|
|
205
|
+
- Start typing "# Technical Plan"
|
|
206
|
+
- Copilot suggests architecture sections
|
|
207
|
+
|
|
208
|
+
4. Create context-manifest.yaml:
|
|
209
|
+
- Copilot suggests relevant files to include
|
|
210
|
+
- Lists spec sections and architecture docs
|
|
211
|
+
|
|
212
|
+
LIMITATIONS (vs Claude Code & Cursor):
|
|
213
|
+
|
|
214
|
+
- No auto-activation or workflows
|
|
215
|
+
- No skills, agents, hooks
|
|
216
|
+
- No slash commands or @ shortcuts
|
|
217
|
+
- No role-based assistance (PM, Architect, etc.)
|
|
218
|
+
- Completely manual workflow
|
|
219
|
+
|
|
220
|
+
But Copilot still provides helpful suggestions!
|
|
221
|
+
- Understands SpecWeave structure from instructions
|
|
222
|
+
- Suggests code following project patterns
|
|
223
|
+
|
|
224
|
+
DOCUMENTATION:
|
|
225
|
+
|
|
226
|
+
- SPECWEAVE.md: Complete development guide
|
|
227
|
+
- .github/copilot/instructions.md: Workspace instructions
|
|
228
|
+
- .github/copilot/README.md: Copilot adapter guide
|
|
229
|
+
- .specweave/docs/: Project documentation
|
|
230
|
+
|
|
231
|
+
You're ready to build with SpecWeave on GitHub Copilot!
|
|
232
|
+
|
|
233
|
+
Note: For better automation, consider Claude Code (full) or Cursor (semi).
|
|
234
|
+
Copilot is best for simple projects or when already using VS Code + Copilot.
|
|
235
|
+
`;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
exports.CopilotAdapter = CopilotAdapter;
|
|
239
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/copilot/adapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2CAA6B;AAC7B,6CAA+B;AAC/B,kDAA8C;AAG9C,MAAa,cAAe,SAAQ,0BAAW;IAA/C;;QACE,SAAI,GAAG,SAAS,CAAC;QACjB,gBAAW,GAAG,uEAAuE,CAAC;QACtF,oBAAe,GAAG,OAAgB,CAAC;IA8LrC,CAAC;IA5LC;;;;;;OAMG;IACH,KAAK,CAAC,MAAM;QACV,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iCAAiC,CAAC,CAAC;QACjF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAEtD,oDAAoD;QACpD,gFAAgF;QAChF,OAAO,eAAe,IAAI,YAAY,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL;gBACE,UAAU,EAAE,iCAAiC;gBAC7C,UAAU,EAAE,iCAAiC;gBAC7C,WAAW,EAAE,uCAAuC;aACrD;YACD;gBACE,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,2BAA2B;gBACvC,WAAW,EAAE,+BAA+B;aAC7C;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAuB;QACnC,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;QAE3E,0CAA0C;QAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACxE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAE/B,aAAa;QACb,MAAM,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE7B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,OAAuB;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2HN,CAAC;IACJ,CAAC;CACF;AAjMD,wCAiMC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cursor Adapter
|
|
3
|
+
*
|
|
4
|
+
* Semi-automation adapter for Cursor editor.
|
|
5
|
+
* Provides workflow instructions via .cursorrules and @ context shortcuts.
|
|
6
|
+
*
|
|
7
|
+
* Since Cursor doesn't natively support Claude Code's skills/agents/hooks,
|
|
8
|
+
* this adapter teaches Cursor HOW TO BEHAVE LIKE it has these capabilities.
|
|
9
|
+
*/
|
|
10
|
+
import { AdapterBase } from '../adapter-base';
|
|
11
|
+
import { AdapterOptions, AdapterFile } from '../adapter-interface';
|
|
12
|
+
export declare class CursorAdapter extends AdapterBase {
|
|
13
|
+
name: string;
|
|
14
|
+
description: string;
|
|
15
|
+
automationLevel: "semi";
|
|
16
|
+
/**
|
|
17
|
+
* Detect if Cursor is available
|
|
18
|
+
*
|
|
19
|
+
* Checks for:
|
|
20
|
+
* - cursor command in PATH
|
|
21
|
+
* - .cursor/ directory exists
|
|
22
|
+
* - .cursorrules file exists
|
|
23
|
+
*/
|
|
24
|
+
detect(): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Get files to install for Cursor adapter
|
|
27
|
+
*/
|
|
28
|
+
getFiles(): AdapterFile[];
|
|
29
|
+
/**
|
|
30
|
+
* Install Cursor adapter
|
|
31
|
+
*/
|
|
32
|
+
install(options: AdapterOptions): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Post-installation instructions
|
|
35
|
+
*/
|
|
36
|
+
postInstall(options: AdapterOptions): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Get usage instructions for Cursor adapter
|
|
39
|
+
*/
|
|
40
|
+
getInstructions(): string;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/cursor/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnE,qBAAa,aAAc,SAAQ,WAAW;IAC5C,IAAI,SAAY;IAChB,WAAW,SAAgF;IAC3F,eAAe,EAAG,MAAM,CAAU;IAElC;;;;;;;OAOG;IACG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAQhC;;OAEG;IACH,QAAQ,IAAI,WAAW,EAAE;IAmCzB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBrD;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD;;OAEG;IACH,eAAe,IAAI,MAAM;CAmK1B"}
|