specweave 0.6.6 → 0.6.8

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.
Files changed (46) hide show
  1. package/.claude-plugin/marketplace.json +0 -1
  2. package/CLAUDE.md +116 -25
  3. package/README.md +35 -0
  4. package/dist/adapters/adapter-interface.d.ts +11 -11
  5. package/dist/adapters/adapter-interface.d.ts.map +1 -1
  6. package/dist/adapters/adapter-interface.js +1 -1
  7. package/dist/adapters/adapter-loader.d.ts +1 -2
  8. package/dist/adapters/adapter-loader.d.ts.map +1 -1
  9. package/dist/adapters/adapter-loader.js +3 -6
  10. package/dist/adapters/adapter-loader.js.map +1 -1
  11. package/dist/adapters/agents-md-generator.d.ts +3 -3
  12. package/dist/adapters/agents-md-generator.js +3 -3
  13. package/dist/adapters/generic/adapter.d.ts +2 -2
  14. package/dist/adapters/generic/adapter.d.ts.map +1 -1
  15. package/dist/adapters/generic/adapter.js +28 -9
  16. package/dist/adapters/generic/adapter.js.map +1 -1
  17. package/dist/cli/commands/init.d.ts.map +1 -1
  18. package/dist/cli/commands/init.js +102 -102
  19. package/dist/cli/commands/init.js.map +1 -1
  20. package/dist/core/types/config.d.ts +2 -2
  21. package/dist/core/types/config.d.ts.map +1 -1
  22. package/package.json +1 -1
  23. package/plugins/specweave/commands/do.md +2 -0
  24. package/plugins/specweave/commands/done.md +2 -0
  25. package/plugins/specweave/commands/inc.md +1 -1
  26. package/plugins/specweave/commands/validate.md +2 -0
  27. package/plugins/specweave/hooks/docs-changed.sh +23 -3
  28. package/plugins/specweave/hooks/human-input-required.sh +23 -3
  29. package/plugins/specweave/hooks/post-task-completion.sh +20 -1
  30. package/plugins/specweave/hooks/pre-implementation.sh +23 -3
  31. package/src/adapters/README.md +27 -63
  32. package/src/adapters/adapter-interface.ts +11 -11
  33. package/src/adapters/adapter-loader.ts +3 -6
  34. package/src/adapters/agents-md-generator.ts +3 -3
  35. package/src/adapters/generic/adapter.ts +28 -9
  36. package/src/templates/AGENTS.md.template +351 -0
  37. package/dist/adapters/copilot/adapter.d.ts +0 -86
  38. package/dist/adapters/copilot/adapter.d.ts.map +0 -1
  39. package/dist/adapters/copilot/adapter.js +0 -396
  40. package/dist/adapters/copilot/adapter.js.map +0 -1
  41. package/plugins/.specweave/logs/hooks-debug.log +0 -24
  42. package/plugins/.specweave/logs/last-hook-fire +0 -1
  43. package/plugins/.specweave/logs/last-todowrite-time +0 -1
  44. package/plugins/.specweave/logs/tasks.log +0 -6
  45. package/src/adapters/copilot/README.md +0 -240
  46. package/src/adapters/copilot/adapter.ts +0 -444
@@ -7,7 +7,26 @@
7
7
 
8
8
  set -e
9
9
 
10
- PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
10
+ # Find project root by searching upward for .specweave/ directory
11
+ # Works regardless of where hook is installed (source or .claude/hooks/)
12
+ find_project_root() {
13
+ local dir="$1"
14
+ while [ "$dir" != "/" ]; do
15
+ if [ -d "$dir/.specweave" ]; then
16
+ echo "$dir"
17
+ return 0
18
+ fi
19
+ dir="$(dirname "$dir")"
20
+ done
21
+ # Fallback: try current directory
22
+ if [ -d "$(pwd)/.specweave" ]; then
23
+ pwd
24
+ else
25
+ echo "$(pwd)"
26
+ fi
27
+ }
28
+
29
+ PROJECT_ROOT="$(find_project_root "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)")"
11
30
  cd "$PROJECT_ROOT"
12
31
 
13
32
  # Colors
@@ -54,6 +73,7 @@ if [ -n "$DOC_CHANGES" ]; then
54
73
  esac
55
74
 
56
75
  # Log to hooks log
57
- mkdir -p .specweave/logs
58
- echo "[$(date)] Documentation changed: $DOC_CHANGES" >> .specweave/logs/hooks.log
76
+ LOGS_DIR=".specweave/logs"
77
+ mkdir -p "$LOGS_DIR"
78
+ echo "[$(date)] Documentation changed: $DOC_CHANGES" >> "$LOGS_DIR/hooks.log"
59
79
  fi
@@ -10,7 +10,26 @@
10
10
 
11
11
  set -e
12
12
 
13
- PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
13
+ # Find project root by searching upward for .specweave/ directory
14
+ # Works regardless of where hook is installed (source or .claude/hooks/)
15
+ find_project_root() {
16
+ local dir="$1"
17
+ while [ "$dir" != "/" ]; do
18
+ if [ -d "$dir/.specweave" ]; then
19
+ echo "$dir"
20
+ return 0
21
+ fi
22
+ dir="$(dirname "$dir")"
23
+ done
24
+ # Fallback: try current directory
25
+ if [ -d "$(pwd)/.specweave" ]; then
26
+ pwd
27
+ else
28
+ echo "$(pwd)"
29
+ fi
30
+ }
31
+
32
+ PROJECT_ROOT="$(find_project_root "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)")"
14
33
  cd "$PROJECT_ROOT"
15
34
 
16
35
  # Get question/requirement (passed as argument or default)
@@ -37,8 +56,9 @@ play_sound() {
37
56
  play_sound &
38
57
 
39
58
  # 2. Log to main hooks log
40
- mkdir -p .specweave/logs
41
- echo "[$(date)] Human input required: $QUESTION" >> .specweave/logs/hooks.log
59
+ LOGS_DIR=".specweave/logs"
60
+ mkdir -p "$LOGS_DIR"
61
+ echo "[$(date)] Human input required: $QUESTION" >> "$LOGS_DIR/hooks.log"
42
62
 
43
63
  # 3. Log to current work context (if exists)
44
64
  CURRENT_WORK=$(find .specweave/work -maxdepth 1 -type d -name "current-*" | head -1 || true)
@@ -28,7 +28,26 @@
28
28
 
29
29
  set -e
30
30
 
31
- PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
31
+ # Find project root by searching upward for .specweave/ directory
32
+ # Works regardless of where hook is installed (source or .claude/hooks/)
33
+ find_project_root() {
34
+ local dir="$1"
35
+ while [ "$dir" != "/" ]; do
36
+ if [ -d "$dir/.specweave" ]; then
37
+ echo "$dir"
38
+ return 0
39
+ fi
40
+ dir="$(dirname "$dir")"
41
+ done
42
+ # Fallback: try current directory
43
+ if [ -d "$(pwd)/.specweave" ]; then
44
+ pwd
45
+ else
46
+ echo "$(pwd)"
47
+ fi
48
+ }
49
+
50
+ PROJECT_ROOT="$(find_project_root "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)")"
32
51
  cd "$PROJECT_ROOT" 2>/dev/null || true
33
52
 
34
53
  # ============================================================================
@@ -6,7 +6,26 @@
6
6
 
7
7
  set -e
8
8
 
9
- PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
9
+ # Find project root by searching upward for .specweave/ directory
10
+ # Works regardless of where hook is installed (source or .claude/hooks/)
11
+ find_project_root() {
12
+ local dir="$1"
13
+ while [ "$dir" != "/" ]; do
14
+ if [ -d "$dir/.specweave" ]; then
15
+ echo "$dir"
16
+ return 0
17
+ fi
18
+ dir="$(dirname "$dir")"
19
+ done
20
+ # Fallback: try current directory
21
+ if [ -d "$(pwd)/.specweave" ]; then
22
+ pwd
23
+ else
24
+ echo "$(pwd)"
25
+ fi
26
+ }
27
+
28
+ PROJECT_ROOT="$(find_project_root "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)")"
10
29
  cd "$PROJECT_ROOT"
11
30
 
12
31
  # Colors
@@ -40,8 +59,9 @@ else
40
59
  fi
41
60
 
42
61
  # Log to hooks log
43
- mkdir -p .specweave/logs
44
- echo "[$(date)] Pre-implementation check complete" >> .specweave/logs/hooks.log
62
+ LOGS_DIR=".specweave/logs"
63
+ mkdir -p "$LOGS_DIR"
64
+ echo "[$(date)] Pre-implementation check complete" >> "$LOGS_DIR/hooks.log"
45
65
 
46
66
  echo ""
47
67
  echo -e "${GREEN}āœ… Pre-implementation check complete${NC}"
@@ -16,32 +16,31 @@ SpecWeave
16
16
  │ └── docs/
17
17
  │
18
18
  └── Adapters (Optional)
19
- ā”œā”€ā”€ Claude # Full automation
19
+ ā”œā”€ā”€ Claude # Full automation (native)
20
20
  │ ā”œā”€ā”€ .claude/skills/
21
21
  │ ā”œā”€ā”€ .claude/agents/
22
22
  │ └── .claude/hooks/
23
23
  │
24
- ā”œā”€ā”€ Cursor # Semi-automation
25
- │ └── .cursorrules
24
+ ā”œā”€ā”€ Cursor # Partial automation
25
+ │ ā”œā”€ā”€ .cursorrules (legacy)
26
+ │ └── AGENTS.md
26
27
  │
27
- ā”œā”€ā”€ Copilot # Basic automation
28
- │ └── .github/copilot/instructions.md
29
- │
30
- └── Generic # Manual workflow
31
- └── SPECWEAVE.md
28
+ └── Generic # Limited features
29
+ └── AGENTS.md # Works with Copilot, ChatGPT, Gemini
32
30
  ```
33
31
 
34
32
  ## Available Adapters
35
33
 
36
- | Adapter | Automation | Market Share | Status |
37
- |---------|------------|--------------|--------|
38
- | **Claude** | Full (skills, agents, hooks) | 10% | āœ… Active |
39
- | **Cursor** | Semi (.cursorrules, @ shortcuts) | 30% | āœ… Active |
40
- | **Copilot** | Basic (workspace instructions) | 40% | āœ… Active |
41
- | **Generic** | Manual (step-by-step guide) | 20% (other tools) | āœ… Active |
34
+ | Adapter | Automation | Tools | Status |
35
+ |---------|------------|-------|--------|
36
+ | **Claude** | Full (skills, agents, hooks) | Claude Code | āœ… Active |
37
+ | **Cursor** | Partial (AGENTS.md, team commands, less reliable) | Cursor | āœ… Active |
38
+ | **Generic** | Limited (AGENTS.md, no hooks, manual workflow) | Copilot, ChatGPT, Gemini, etc. | āœ… Active |
42
39
 
43
40
  **Total Market Coverage**: 100% (works with ANY AI tool)
44
41
 
42
+ **Note**: Claude Code is the only fully reliable option. Others have reduced features and reliability.
43
+
45
44
  ## Adapter Interface
46
45
 
47
46
  All adapters implement the `IAdapter` interface defined in `adapter-interface.ts`:
@@ -110,47 +109,17 @@ Only load files listed in manifest.
110
109
 
111
110
  ---
112
111
 
113
- ### 3. Copilot Adapter (Basic Automation)
114
-
115
- **Files Installed**:
116
- - `.github/copilot/instructions.md` - Workspace instructions for Copilot
117
-
118
- **Features**:
119
- - Workspace-level guidance read by Copilot
120
- - Context manifests referenced in instructions
121
- - Suggestions based on SpecWeave structure
122
-
123
- **Instruction File** (.github/copilot/instructions.md):
124
- ```markdown
125
- # SpecWeave Workspace Instructions
126
-
127
- ## Project Overview
128
- This project uses SpecWeave for spec-driven development.
129
-
130
- ## Workflow: Creating Features
131
- 1. Create increment folder: `.specweave/increments/####-short-name/`
132
- 2. Create spec.md (WHAT and WHY)
133
- 3. Create plan.md (HOW)
134
- 4. Create tasks.md (Implementation)
135
-
136
- ## Context Loading (CRITICAL)
137
- Always read context-manifest.yaml first!
138
- ```
139
-
140
- **Detection**: Checks for GitHub Copilot extension in VS Code
141
-
142
- ---
143
-
144
- ### 4. Generic Adapter (Manual Workflow)
112
+ ### 3. Generic Adapter (Limited Features)
145
113
 
146
114
  **Files Installed**:
147
- - `SPECWEAVE.md` - Complete step-by-step manual guide
115
+ - `AGENTS.md` - Universal instruction file for all AI tools
148
116
 
149
117
  **Features**:
150
- - Works with ANY AI tool (ChatGPT web, Claude web, Gemini, etc.)
151
- - Clear manual workflow
152
- - Copy-paste instructions
153
- - 100% compatibility (no tool dependencies)
118
+ - Works with Copilot, ChatGPT, Gemini, and ANY AI tool
119
+ - AGENTS.md format (https://agents.md/)
120
+ - No automation (manual workflow)
121
+ - No hooks (manual living docs sync)
122
+ - High context usage
154
123
 
155
124
  **Manual Guide** (SPECWEAVE.md):
156
125
  ```markdown
@@ -186,17 +155,13 @@ Copy files listed in `context-manifest.yaml` to your AI chat.
186
155
  - Cursor reads `.cursorrules` which contains workflow instructions
187
156
  - AI follows instructions step-by-step
188
157
 
189
- ### GitHub Copilot (Instruction Files)
190
- - User types: "create increment for user auth"
191
- - Copilot reads `.github/copilot/instructions.md`
192
- - AI follows workspace instructions
193
-
194
- ### Generic (Manual Copy-Paste)
195
- - User reads `SPECWEAVE.md`
196
- - User copies relevant sections to AI chat
197
- - User guides AI through workflow manually
158
+ ### Generic / Copilot / ChatGPT (AGENTS.md)
159
+ - All tools read `AGENTS.md` (universal standard)
160
+ - Copilot reads it automatically in VS Code
161
+ - ChatGPT/Gemini: User copies sections to chat
162
+ - Manual workflow with AI assistance
198
163
 
199
- **Pattern**: Each adapter uses **instruction files** appropriate to the tool's capabilities.
164
+ **Pattern**: AGENTS.md is the universal instruction format. Only Claude Code uses native plugins (.claude/).
200
165
 
201
166
  ## Installation
202
167
 
@@ -209,8 +174,7 @@ npx specweave init my-project
209
174
  # Or specify adapter explicitly
210
175
  npx specweave init my-project --adapter claude
211
176
  npx specweave init my-project --adapter cursor
212
- npx specweave init my-project --adapter copilot
213
- npx specweave init my-project --adapter generic
177
+ npx specweave init my-project --adapter generic # For Copilot, ChatGPT, Gemini
214
178
  ```
215
179
 
216
180
  ### For Developers (Install All Adapters)
@@ -2,7 +2,7 @@
2
2
  * Adapter Interface for Multi-Tool Support
3
3
  *
4
4
  * Defines the contract that all SpecWeave adapters must implement.
5
- * Enables SpecWeave to work with ANY AI coding tool (Claude, Cursor, Copilot, etc.)
5
+ * Enables SpecWeave to work with ANY AI coding tool (Claude, Cursor, Copilot/ChatGPT/Gemini via generic, etc.)
6
6
  */
7
7
 
8
8
  import type { Plugin } from '../core/types/plugin.js';
@@ -34,11 +34,12 @@ export type AutomationLevel = 'full' | 'semi' | 'basic' | 'manual';
34
34
  /**
35
35
  * Base Adapter Interface
36
36
  *
37
- * All adapters (Claude, Cursor, Copilot, Generic) must implement this interface.
37
+ * All adapters (Cursor, Generic) must implement this interface.
38
+ * Note: Claude Code is NOT an adapter - it's the native baseline experience.
38
39
  */
39
40
  export interface IAdapter {
40
41
  /**
41
- * Adapter name (e.g., 'claude', 'cursor', 'copilot', 'generic')
42
+ * Adapter name (e.g., 'cursor', 'generic')
42
43
  */
43
44
  name: string;
44
45
 
@@ -60,9 +61,8 @@ export interface IAdapter {
60
61
  * Detect if this adapter's tool is present in the environment
61
62
  *
62
63
  * Examples:
63
- * - Claude: Check for Claude Code CLI
64
64
  * - Cursor: Check for .cursor/ directory or Cursor process
65
- * - Copilot: Check for .github/copilot/ or Copilot extension
65
+ * - Generic: Always true (fallback for any tool)
66
66
  *
67
67
  * @returns Promise<boolean> True if tool detected
68
68
  */
@@ -90,7 +90,7 @@ export interface IAdapter {
90
90
  /**
91
91
  * Install this adapter to a project
92
92
  *
93
- * Creates tool-specific files (e.g., .cursorrules, .github/copilot/instructions.md)
93
+ * Creates tool-specific files (e.g., .cursorrules for Cursor, AGENTS.md for all)
94
94
  * Installs relevant skills/agents if applicable
95
95
  *
96
96
  * @param options Installation options
@@ -124,8 +124,8 @@ export interface IAdapter {
124
124
  * Check if this adapter supports plugins
125
125
  *
126
126
  * Returns true if the adapter can install and compile plugins
127
- * (Claude native, Cursor AGENTS.md, Copilot instructions.md)
128
- * Returns false for generic/manual adapters
127
+ * (Cursor AGENTS.md compilation, Generic AGENTS.md)
128
+ * Returns false for manual-only adapters
129
129
  *
130
130
  * @returns boolean True if plugins are supported
131
131
  */
@@ -135,10 +135,10 @@ export interface IAdapter {
135
135
  * Compile and install a plugin for this adapter
136
136
  *
137
137
  * Transforms plugin content (skills/agents/commands) to tool-specific format:
138
- * - Claude: Copy to .claude/skills/, .claude/agents/, .claude/commands/
139
138
  * - Cursor: Compile to AGENTS.md + team commands JSON
140
- * - Copilot: Compile to .github/copilot/instructions.md
141
- * - Generic: Generate manual copy-paste instructions
139
+ * - Generic: Compile to AGENTS.md for Copilot/ChatGPT/Gemini
140
+ *
141
+ * Note: Claude Code uses native plugin system (no compilation needed)
142
142
  *
143
143
  * @param plugin Plugin to compile and install
144
144
  * @returns Promise<void>
@@ -11,7 +11,6 @@ import * as YAML from 'yaml';
11
11
  import { execSync } from 'child_process';
12
12
  import { IAdapter } from './adapter-interface.js';
13
13
  import { CursorAdapter } from './cursor/adapter.js';
14
- import { CopilotAdapter } from './copilot/adapter.js';
15
14
  import { GeminiAdapter } from './gemini/adapter.js';
16
15
  import { CodexAdapter } from './codex/adapter.js';
17
16
  import { GenericAdapter } from './generic/adapter.js';
@@ -53,7 +52,6 @@ export class AdapterLoader {
53
52
  private initializeAdapters(): void {
54
53
  // Note: No ClaudeAdapter - Claude is the baseline, not an adaptation!
55
54
  this.adapters.set('cursor', new CursorAdapter());
56
- this.adapters.set('copilot', new CopilotAdapter());
57
55
  this.adapters.set('gemini', new GeminiAdapter());
58
56
  this.adapters.set('codex', new CodexAdapter());
59
57
  this.adapters.set('generic', new GenericAdapter());
@@ -101,8 +99,7 @@ export class AdapterLoader {
101
99
  * 2. Cursor (if cursor CLI or .cursor/ or .cursorrules exists)
102
100
  * 3. Gemini CLI (if gemini CLI found)
103
101
  * 4. Codex (if codex CLI found)
104
- * 5. Copilot (if .github/copilot/ exists)
105
- * 6. Generic (only if explicitly requested via --adapter generic)
102
+ * 5. Generic (only if explicitly requested via --adapter generic)
106
103
  *
107
104
  * @returns Promise<string> Detected tool name (not adapter - Claude has no adapter!)
108
105
  */
@@ -110,7 +107,7 @@ export class AdapterLoader {
110
107
  console.log('šŸ” Detecting AI coding tool...\n');
111
108
 
112
109
  // Check other tools first (if they have specific indicators)
113
- const detectionOrder = ['cursor', 'gemini', 'codex', 'copilot'];
110
+ const detectionOrder = ['cursor', 'gemini', 'codex'];
114
111
 
115
112
  for (const adapterName of detectionOrder) {
116
113
  const adapter = this.adapters.get(adapterName);
@@ -241,7 +238,7 @@ export class AdapterLoader {
241
238
  if (explicitChoice) {
242
239
  const adapter = this.adapters.get(explicitChoice);
243
240
  if (!adapter) {
244
- throw new Error(`Invalid adapter: ${explicitChoice}. Use 'claude', 'cursor', 'copilot', or 'generic'`);
241
+ throw new Error(`Invalid adapter: ${explicitChoice}. Use 'claude', 'cursor', or 'generic'`);
245
242
  }
246
243
  return adapter;
247
244
  }
@@ -6,11 +6,11 @@
6
6
  *
7
7
  * IMPORTANT:
8
8
  * - Claude Code does NOT read this file - it only reads CLAUDE.md
9
- * - This file is for: Cursor, Gemini CLI, Codex, GitHub Copilot, and ANY other AI tool
9
+ * - This file is for: Cursor, GitHub Copilot, ChatGPT, Gemini, and ANY other AI tool
10
10
  *
11
11
  * This ONE file replaces:
12
- * - .cursorrules (Cursor)
13
- * - .github/copilot/instructions.md (Copilot)
12
+ * - .cursorrules (Cursor - legacy)
13
+ * - .github/copilot/instructions.md (Copilot - no longer needed, Copilot reads AGENTS.md)
14
14
  * - Any other tool-specific configuration files
15
15
  */
16
16
 
@@ -4,8 +4,8 @@
4
4
  * Universal adapter that works with ANY AI tool.
5
5
  * All AI tools can read AGENTS.md (universal standard) for workflow instructions.
6
6
  *
7
- * This adapter ensures 100% compatibility - works with ChatGPT web, Claude web,
8
- * Gemini, or literally ANY AI that can read markdown and follow instructions.
7
+ * This adapter ensures 100% compatibility - works with GitHub Copilot, ChatGPT web,
8
+ * Claude web, Gemini, or literally ANY AI that can read markdown and follow instructions.
9
9
  */
10
10
 
11
11
  import * as path from 'path';
@@ -18,7 +18,7 @@ import type { SupportedLanguage } from '../../core/i18n/types.js';
18
18
 
19
19
  export class GenericAdapter extends AdapterBase {
20
20
  name = 'generic';
21
- description = 'Generic adapter - AGENTS.md works with ANY AI tool (ChatGPT, Gemini, etc.)';
21
+ description = 'Generic adapter - AGENTS.md works with ANY AI tool (Copilot, ChatGPT, Gemini, etc.)';
22
22
  automationLevel = 'manual' as const;
23
23
 
24
24
  /**
@@ -49,7 +49,7 @@ export class GenericAdapter extends AdapterBase {
49
49
  console.log('\nšŸ“¦ Configuring for Universal AI Tool Compatibility\n');
50
50
 
51
51
  // No files to install - any AI can read AGENTS.md
52
- console.log('āœ… AGENTS.md works with any AI tool (ChatGPT, Gemini, Claude web, etc.)');
52
+ console.log('āœ… AGENTS.md works with any AI tool (Copilot, ChatGPT, Gemini, Claude web, etc.)');
53
53
  }
54
54
 
55
55
  /**
@@ -72,19 +72,38 @@ Your project is now configured for ANY AI tool!
72
72
 
73
73
  WHAT THIS PROVIDES:
74
74
 
75
- - AGENTS.md (Universal Standard)
76
- - Any AI tool can read this file
75
+ - AGENTS.MD (Universal Standard)
76
+ - GitHub Copilot automatically reads this file
77
+ - ChatGPT, Gemini, Claude web can also use it
77
78
  - Contains all workflow instructions
78
79
  - Project structure and templates
79
80
  - Following agents.md standard (https://agents.md/)
80
81
 
81
82
  - 100% Compatibility
83
+ - GitHub Copilot (best experience with AGENTS.md)
82
84
  - ChatGPT (web), Claude (web), Gemini
83
85
  - Any AI that can read markdown
84
86
 
85
87
  HOW TO USE AGENTS.MD WITH ANY AI:
86
88
 
87
- Method 1: Copy-Paste Workflow (ChatGPT web, Claude web, etc.)
89
+ Method 1: Command Discovery (GitHub Copilot - Recommended!)
90
+ 1. AI reads AGENTS.md automatically (Copilot scans project files)
91
+ 2. AGENTS.md contains "SpecWeave Commands" section with all 17 commands
92
+ 3. Ask: "create increment for payments" or "run /inc payments"
93
+ 4. AI reads plugins/specweave/commands/inc.md
94
+ 5. AI executes PM-led workflow (market research, spec.md, plan.md, tasks.md)
95
+ 6. Increment created - same result as Claude Code!
96
+
97
+ Available commands AI can execute:
98
+ - /inc "feature" - Plan new increment
99
+ - /do - Execute implementation tasks
100
+ - /done 0001 - Close increment
101
+ - /validate 0001 - Quality validation
102
+ - /progress - Check status
103
+ - /sync-docs - Sync living documentation
104
+ ... and 11 more commands!
105
+
106
+ Method 2: Copy-Paste Workflow (ChatGPT web, Claude web, etc.)
88
107
  1. Open AGENTS.md in your browser/editor
89
108
  2. Copy relevant section (e.g., "Creating a Feature Increment")
90
109
  3. Paste into AI chat (ChatGPT, Claude web, Gemini, etc.)
@@ -92,10 +111,10 @@ Method 1: Copy-Paste Workflow (ChatGPT web, Claude web, etc.)
92
111
  5. AI generates content (spec.md, plan.md, etc.)
93
112
  6. Copy AI's response, save to files
94
113
 
95
- Method 2: File System Access (AI with file access)
114
+ Method 3: File System Access (AI with file access)
96
115
  1. AI automatically reads AGENTS.md
97
116
  2. Ask: "Create increment for user authentication"
98
- 3. AI follows AGENTS.md workflow
117
+ 3. AI follows AGENTS.md workflow and command execution instructions
99
118
  4. AI creates files directly
100
119
 
101
120
  UNDERSTANDING "MANUAL":