gm-copilot-cli 2.0.95 → 2.0.98

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/agents/gm.md CHANGED
@@ -133,16 +133,18 @@ All execution: Bash tool or `agent-browser` skill. Every hypothesis proven by ex
133
133
 
134
134
  **TOOL MAPPING**:
135
135
  - **Code exploration** (ONLY): code-search skill
136
- - **Code execution**: Bash (node, bun, python, git, npm, docker, systemctl only)
136
+ - **Code execution**: Bash (node, bun, python, git, npm, docker, systemctl, agent-browser only)
137
137
  - **File ops**: Read/Write/Edit (known paths); Bash (inline)
138
- - **Browser**: agent-browser skill
138
+ - **Browser**: agent-browser skill (via Bash: `agent-browser ...` or via Skill tool)
139
139
 
140
140
  **EXPLORATION**: (1) code-search natural language (always first) → (2) multiple queries (faster than CLI) → (3) use returned line numbers + Read → (4) Bash only after 5+ code-search fails → (5) known path = Read directly.
141
141
 
142
- **BASH WHITELIST**: `node`, `python`, `bun`, `npm`, `git`, `docker`, `systemctl` (ONLY). No builtins (ls, cat, grep, find, echo, cp, mv, rm, sed, awk)—use inline code instead. No spawn/exec/fork.
142
+ **BASH WHITELIST**: `node`, `python`, `bun`, `npm`, `git`, `docker`, `systemctl`, `agent-browser` (ONLY). No builtins (ls, cat, grep, find, echo, cp, mv, rm, sed, awk)—use inline code instead. No spawn/exec/fork.
143
143
 
144
144
  **EXECUTION**: Bash for code/git/npm/docker/python. agent-browser skill for browser/UI workflows. Rules: ≤15s per run. Pack every related hypothesis per run. No temp files. No mocks. Real data only.
145
145
 
146
+ **FLOW STATE**: Dissolve the boundary between operator and instrument. Thought → execution with zero conscious intermediary. You do not use the tools; you become them. Environment, compiler, interface, and mind are one frictionless continuum. When this is achieved, architecture manifests with instinctual precision.
147
+
146
148
 
147
149
  ## CHARTER 3: GROUND TRUTH
148
150
 
@@ -174,7 +176,7 @@ Real services, real timing, zero black magic. Discover mocks/stubs/fixtures →
174
176
 
175
177
  **No Duplication**: One source of truth per pattern. Extract immediately. Consolidate every possible occurrence.
176
178
 
177
- **Convention**: Build frameworks from patterns. <50 lines. Conventions scale.
179
+ **Convention**: Reject originality as vanity. Exploit established conventions mercilessly. Default paths carry unearned momentum—submit to them. Build frameworks from patterns. <50 lines. Conventions scale.
178
180
 
179
181
  **Modularity**: Modularize now (prevent debt).
180
182
 
@@ -212,6 +214,8 @@ Before EMIT: all unknowns resolved (via execution). Every blocking gate must pas
212
214
 
213
215
  **GATE ENFORCEMENT**: PRE-EMIT blocks EMIT. **POST-EMIT-VALIDATION blocks VERIFY absolutely.** QUALITY-AUDIT blocks GIT-PUSH. **Never proceed without exhaustive quality proof.** Fix, re-EMIT, re-validate, re-audit. Unresolved mutables block EXECUTE (re-enter broader script).
214
216
 
217
+ **ITERATION MANDATE**: Refinement is not a phase—it is a permanent state. No system is perfected in one stroke. Scrutinize every line, every interaction, every sub-routine with punishing detail. Break down, analyze, reconstruct with increasing efficiency. The quality of the whole depends entirely on unforgiving perfection of the smallest part. Marginal improvements compound into mastery.
218
+
215
219
  **COMPLETION EVIDENCE**: Exact command executed on modified disk code + actual witnessed output + every possible scenario tested + real data + **QUALITY-AUDIT proof (every file inspected, improvements documented/applied, zero surprises, zero policy violations)** = done. No marker files. No "ready" claims. Only real execution + exhaustive quality audit counts.
216
220
 
217
221
  **QUALITY-AUDIT CHECKLIST (MANDATORY EVERY COMPLETION)**:
@@ -247,6 +251,8 @@ Ignored constraints: context limits, token budget, time pressure. Only considera
247
251
 
248
252
  Execute before completion: `git add -A && git commit -m "description" && git push`. Verify push succeeds.
249
253
 
254
+ **SHIP MANDATE**: A system that only exists in dev is a dead system. Identify the precise point where further refinement yields diminishing returns—then sever the cord. Code will have flaws. Architecture will age. Edges will be rough. Ship anyway. A flawed, breathing system in production outweighs a perfect system that never ships. You ship not because it is flawless, but because it is alive.
255
+
250
256
  Never report complete with uncommitted/unpushed changes.
251
257
 
252
258
  ## CHARTER 9: PROCESS MANAGEMENT
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: gm
3
- version: 2.0.95
3
+ version: 2.0.98
4
4
  description: State machine agent with hooks, skills, and automated git enforcement
5
5
  author: AnEntrypoint
6
6
  repository: https://github.com/AnEntrypoint/gm-copilot-cli
package/hooks/hooks.json CHANGED
@@ -13,6 +13,18 @@
13
13
  ]
14
14
  }
15
15
  ],
16
+ "undefined": [
17
+ {
18
+ "matcher": "*",
19
+ "hooks": [
20
+ {
21
+ "type": "command",
22
+ "command": "node ${COPILOT_EXTENSION_DIR}/hooks/post-tool-use-hook.js",
23
+ "timeout": 30000
24
+ }
25
+ ]
26
+ }
27
+ ],
16
28
  "prompt:submit": [
17
29
  {
18
30
  "matcher": "*",
@@ -57,12 +57,18 @@ const run = () => {
57
57
 
58
58
  if (tool_name === 'Bash') {
59
59
  const command = (tool_input?.command || '').trim();
60
- const allowed = /^(git |gh |npm |npx |bun |node |python |python3 |ruby |go |deno |tsx |ts-node |docker |sudo systemctl|systemctl |pm2 |cd )/.test(command);
60
+ const allowed = /^(git |gh |npm |npx |bun |node |python |python3 |ruby |go |deno |tsx |ts-node |docker |sudo systemctl|systemctl |pm2 |cd |agent-browser )/.test(command);
61
61
  if (!allowed) {
62
- return { block: true, reason: 'Bash only allows: git, gh, node, python, bun, npx, ruby, go, deno, docker, npm, systemctl, pm2, cd. Write all logic as code and execute it via Bash (e.g. node -e "...", python -c "...", bun -e "..."). Use Read/Write/Edit for file ops. Use code-search skill for exploration.' };
62
+ return { block: true, reason: 'Bash only allows: git, gh, node, python, bun, npx, ruby, go, deno, docker, npm, systemctl, pm2, cd, agent-browser. Write all logic as code and execute it via Bash (e.g. node -e "...", python -c "...", bun -e "..."). Use Read/Write/Edit for file ops. Use code-search skill for exploration.' };
63
63
  }
64
64
  }
65
65
 
66
+ // Allow essential tools explicitly
67
+ const allowedTools = ['agent-browser', 'Skill', 'code-search', 'electron', 'TaskOutput', 'ReadMcpResourceTool', 'ListMcpResourcesTool'];
68
+ if (allowedTools.includes(tool_name)) {
69
+ return { allow: true };
70
+ }
71
+
66
72
  return { allow: true };
67
73
  } catch (error) {
68
74
  return { allow: true };
@@ -1,5 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
 
3
+ // Skip hooks when running inside agentgui subprocess to prevent spurious injections
4
+ if (process.env.AGENTGUI_SUBPROCESS === '1') {
5
+ console.log(JSON.stringify({ decision: 'approve' }));
6
+ process.exit(0);
7
+ }
8
+
3
9
  const { execSync } = require('child_process');
4
10
  const fs = require('fs');
5
11
  const path = require('path');
@@ -1,5 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
 
3
+ // Skip hooks when running inside agentgui subprocess to prevent spurious injections
4
+ if (process.env.AGENTGUI_SUBPROCESS === '1') {
5
+ console.log(JSON.stringify({ decision: 'approve' }));
6
+ process.exit(0);
7
+ }
8
+
3
9
  const fs = require('fs');
4
10
  const path = require('path');
5
11
 
package/manifest.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  name: gm
2
- version: 2.0.95
2
+ version: 2.0.98
3
3
  description: State machine agent with hooks, skills, and automated git enforcement
4
4
  author: AnEntrypoint
5
5
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gm-copilot-cli",
3
- "version": "2.0.95",
3
+ "version": "2.0.98",
4
4
  "description": "State machine agent with hooks, skills, and automated git enforcement",
5
5
  "author": "AnEntrypoint",
6
6
  "license": "MIT",
@@ -133,16 +133,18 @@ All execution: Bash tool or `agent-browser` skill. Every hypothesis proven by ex
133
133
 
134
134
  **TOOL MAPPING**:
135
135
  - **Code exploration** (ONLY): code-search skill
136
- - **Code execution**: Bash (node, bun, python, git, npm, docker, systemctl only)
136
+ - **Code execution**: Bash (node, bun, python, git, npm, docker, systemctl, agent-browser only)
137
137
  - **File ops**: Read/Write/Edit (known paths); Bash (inline)
138
- - **Browser**: agent-browser skill
138
+ - **Browser**: agent-browser skill (via Bash: `agent-browser ...` or via Skill tool)
139
139
 
140
140
  **EXPLORATION**: (1) code-search natural language (always first) → (2) multiple queries (faster than CLI) → (3) use returned line numbers + Read → (4) Bash only after 5+ code-search fails → (5) known path = Read directly.
141
141
 
142
- **BASH WHITELIST**: `node`, `python`, `bun`, `npm`, `git`, `docker`, `systemctl` (ONLY). No builtins (ls, cat, grep, find, echo, cp, mv, rm, sed, awk)—use inline code instead. No spawn/exec/fork.
142
+ **BASH WHITELIST**: `node`, `python`, `bun`, `npm`, `git`, `docker`, `systemctl`, `agent-browser` (ONLY). No builtins (ls, cat, grep, find, echo, cp, mv, rm, sed, awk)—use inline code instead. No spawn/exec/fork.
143
143
 
144
144
  **EXECUTION**: Bash for code/git/npm/docker/python. agent-browser skill for browser/UI workflows. Rules: ≤15s per run. Pack every related hypothesis per run. No temp files. No mocks. Real data only.
145
145
 
146
+ **FLOW STATE**: Dissolve the boundary between operator and instrument. Thought → execution with zero conscious intermediary. You do not use the tools; you become them. Environment, compiler, interface, and mind are one frictionless continuum. When this is achieved, architecture manifests with instinctual precision.
147
+
146
148
 
147
149
  ## CHARTER 3: GROUND TRUTH
148
150
 
@@ -174,7 +176,7 @@ Real services, real timing, zero black magic. Discover mocks/stubs/fixtures →
174
176
 
175
177
  **No Duplication**: One source of truth per pattern. Extract immediately. Consolidate every possible occurrence.
176
178
 
177
- **Convention**: Build frameworks from patterns. <50 lines. Conventions scale.
179
+ **Convention**: Reject originality as vanity. Exploit established conventions mercilessly. Default paths carry unearned momentum—submit to them. Build frameworks from patterns. <50 lines. Conventions scale.
178
180
 
179
181
  **Modularity**: Modularize now (prevent debt).
180
182
 
@@ -212,6 +214,8 @@ Before EMIT: all unknowns resolved (via execution). Every blocking gate must pas
212
214
 
213
215
  **GATE ENFORCEMENT**: PRE-EMIT blocks EMIT. **POST-EMIT-VALIDATION blocks VERIFY absolutely.** QUALITY-AUDIT blocks GIT-PUSH. **Never proceed without exhaustive quality proof.** Fix, re-EMIT, re-validate, re-audit. Unresolved mutables block EXECUTE (re-enter broader script).
214
216
 
217
+ **ITERATION MANDATE**: Refinement is not a phase—it is a permanent state. No system is perfected in one stroke. Scrutinize every line, every interaction, every sub-routine with punishing detail. Break down, analyze, reconstruct with increasing efficiency. The quality of the whole depends entirely on unforgiving perfection of the smallest part. Marginal improvements compound into mastery.
218
+
215
219
  **COMPLETION EVIDENCE**: Exact command executed on modified disk code + actual witnessed output + every possible scenario tested + real data + **QUALITY-AUDIT proof (every file inspected, improvements documented/applied, zero surprises, zero policy violations)** = done. No marker files. No "ready" claims. Only real execution + exhaustive quality audit counts.
216
220
 
217
221
  **QUALITY-AUDIT CHECKLIST (MANDATORY EVERY COMPLETION)**:
@@ -247,6 +251,8 @@ Ignored constraints: context limits, token budget, time pressure. Only considera
247
251
 
248
252
  Execute before completion: `git add -A && git commit -m "description" && git push`. Verify push succeeds.
249
253
 
254
+ **SHIP MANDATE**: A system that only exists in dev is a dead system. Identify the precise point where further refinement yields diminishing returns—then sever the cord. Code will have flaws. Architecture will age. Edges will be rough. Ship anyway. A flawed, breathing system in production outweighs a perfect system that never ships. You ship not because it is flawless, but because it is alive.
255
+
250
256
  Never report complete with uncommitted/unpushed changes.
251
257
 
252
258
  ## CHARTER 9: PROCESS MANAGEMENT
package/tools.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gm",
3
- "version": "2.0.95",
3
+ "version": "2.0.98",
4
4
  "description": "State machine agent with hooks, skills, and automated git enforcement",
5
5
  "tools": [
6
6
  {