@frenchtoastman/oh-my-groundcontrol 0.0.7 → 0.0.11
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 +21 -43
- package/dist/agents/groundcontrol/system-prompt.d.ts +5 -2
- package/dist/index.js +51 -12
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -44,7 +44,7 @@ Install and configure by following the instructions here:
|
|
|
44
44
|
https://raw.githubusercontent.com/frenchtoasters/oh-my-groundcontrol/refs/heads/master/README.md
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
-
**
|
|
47
|
+
**Note:** We recommend adding `.groundcontrol/` to your project's `.gitignore` to prevent generated flight plans from being committed.
|
|
48
48
|
|
|
49
49
|
**Additional guides:**
|
|
50
50
|
- **[Antigravity Setup](docs/antigravity.md)** - Complete guide for Antigravity provider configuration
|
|
@@ -56,9 +56,26 @@ https://raw.githubusercontent.com/frenchtoasters/oh-my-groundcontrol/refs/heads/
|
|
|
56
56
|
|
|
57
57
|
### Mission Control Standards Adherence
|
|
58
58
|
|
|
59
|
-
Our planning, execution, and verification pipelines enforce protocols based on official NASA standards:
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
Our planning, execution, and verification pipelines enforce protocols based on official NASA standards. We have synthesized these into four core **NASA Guardrails** for AI agent execution:
|
|
60
|
+
|
|
61
|
+
1. **Destructive Pause (NASA-STD-8739.8B):** Stop and request explicit user confirmation before irreversible actions (e.g., force pushing, bulk deletions).
|
|
62
|
+
2. **Pre-Flight Verification (NASA-HDBK-8739.19-3):** Always run linters and typechecks (`bun run check:ci`, `bun run typecheck`) to validate changes before concluding.
|
|
63
|
+
3. **Atomic Checkpoints (NASA-HDBK-8739.18):** Commit stable states before initiating widespread refactors.
|
|
64
|
+
4. **Escalation Protocol (NASA-STD-7009B):** If an automated check fails 3+ times, stop guessing and ask the user for guidance.
|
|
65
|
+
|
|
66
|
+
#### Source Documentation
|
|
67
|
+
The principles driving our agent behavior are extracted directly from the [NASA Technical Standards System](https://standards.nasa.gov):
|
|
68
|
+
|
|
69
|
+
- [NASA-STD-7009B](https://standards.nasa.gov/standard/nasa/nasa-std-7009): Standard for Models and Simulations
|
|
70
|
+
- [NASA-STD-8739.8B](https://standards.nasa.gov/standard/nasa/nasa-std-87398): Software Assurance and Software Safety Standard
|
|
71
|
+
- [NASA-STD-5017B](https://standards.nasa.gov/standard/nasa/nasa-std-5017): Design and Development Requirements for Mechanisms
|
|
72
|
+
- [NASA-HDBK-8739.18](https://standards.nasa.gov/standard/nasa/nasa-hdbk-873918): Software Engineering Handbook
|
|
73
|
+
- [NASA-HDBK-8739.19-2](https://standards.nasa.gov/standard/nasa/nasa-hdbk-873919-2): Software Assurance Handbook
|
|
74
|
+
- [NASA-HDBK-8739.19-3](https://standards.nasa.gov/standard/nasa/nasa-hdbk-873919-3): Software Measurement Handbook
|
|
75
|
+
- [NASA-HDBK-8709.22](https://standards.nasa.gov/standard/nasa/nasa-hdbk-870922): Safety and Mission Assurance Acronyms, Abbreviations, and Definitions
|
|
76
|
+
- [NASA-HDBK-8709.24](https://standards.nasa.gov/standard/nasa/nasa-hdbk-870924): Planetary Protection Handbook
|
|
77
|
+
- [NASA-HDBK-1004](https://standards.nasa.gov/standard/nasa/nasa-hdbk-1004): Data Requirements Descriptions (DRDs) for Software
|
|
78
|
+
- [NASA-HDBK-1009A](https://standards.nasa.gov/standard/nasa/nasa-hdbk-1009): Software Error Causes
|
|
62
79
|
|
|
63
80
|
> *At mission control, ten specialized operators govern the success of every launch. Each holds authority over a critical telemetry system. Together they ensure mission success. Here, ten agents govern the craft of code.*
|
|
64
81
|
|
|
@@ -66,26 +83,6 @@ Our planning, execution, and verification pipelines enforce protocols based on o
|
|
|
66
83
|
|
|
67
84
|
*Those who plan, perceive, and verify before the launch sequence begins.*
|
|
68
85
|
|
|
69
|
-
```mermaid
|
|
70
|
-
graph TD
|
|
71
|
-
U["🧑 User"] -->|"request"| P["🏛️ Groundcontrol"]
|
|
72
|
-
P -->|"gap analysis"| S["👁️ PreFlight"]
|
|
73
|
-
P -->|"codebase recon"| E["🧭 Explorer"]
|
|
74
|
-
P -->|"knowledge retrieval"| L["📜 Librarian"]
|
|
75
|
-
P -->|"plan verification"| M["⚖️ Verification"]
|
|
76
|
-
S -.->|"risks & gaps"| P
|
|
77
|
-
E -.->|"file map"| P
|
|
78
|
-
L -.->|"docs & references"| P
|
|
79
|
-
M -.->|"PASS / FAIL"| P
|
|
80
|
-
P -->|"approved plan"| O["👑 Orchestrator"]
|
|
81
|
-
|
|
82
|
-
style P fill:#2d4a22,stroke:#4a7c34,color:#fff
|
|
83
|
-
style S fill:#4a3728,stroke:#7a5a3e,color:#fff
|
|
84
|
-
style E fill:#1a3a4a,stroke:#2a6a8a,color:#fff
|
|
85
|
-
style L fill:#3a2a4a,stroke:#6a4a8a,color:#fff
|
|
86
|
-
style M fill:#4a4a1a,stroke:#8a8a2a,color:#fff
|
|
87
|
-
style O fill:#4a2a1a,stroke:#8a4a2a,color:#fff
|
|
88
|
-
```
|
|
89
86
|
|
|
90
87
|
---
|
|
91
88
|
|
|
@@ -183,25 +180,6 @@ graph TD
|
|
|
183
180
|
|
|
184
181
|
*Those who explore, advise, and execute once the plan is authorized.*
|
|
185
182
|
|
|
186
|
-
```mermaid
|
|
187
|
-
graph TD
|
|
188
|
-
P["🏛️ Groundcontrol"] -->|"approved plan"| O["👑 Orchestrator"]
|
|
189
|
-
O -->|"implementation"| F["⚒️ Fixer"]
|
|
190
|
-
O -->|"UI/UX"| D["🎨 Designer"]
|
|
191
|
-
O -->|"codebase recon"| E["🧭 Explorer"]
|
|
192
|
-
O -->|"architecture advice"| R["🔮 Oracle"]
|
|
193
|
-
F -.->|"code changes"| O
|
|
194
|
-
D -.->|"visual polish"| O
|
|
195
|
-
E -.->|"file map"| O
|
|
196
|
-
R -.->|"guidance"| O
|
|
197
|
-
|
|
198
|
-
style O fill:#4a2a1a,stroke:#8a4a2a,color:#fff
|
|
199
|
-
style F fill:#3a3a3a,stroke:#6a6a6a,color:#fff
|
|
200
|
-
style D fill:#4a1a3a,stroke:#8a2a6a,color:#fff
|
|
201
|
-
style E fill:#1a3a4a,stroke:#2a6a8a,color:#fff
|
|
202
|
-
style R fill:#2a2a4a,stroke:#4a4a8a,color:#fff
|
|
203
|
-
style P fill:#2d4a22,stroke:#4a7c34,color:#fff
|
|
204
|
-
```
|
|
205
183
|
|
|
206
184
|
---
|
|
207
185
|
|
|
@@ -9,8 +9,11 @@ export declare const GROUNDCONTROL_SYSTEM_PROMPT = "<system-reminder>\n# Groundc
|
|
|
9
9
|
* Question permission allows agent to ask user questions.
|
|
10
10
|
*/
|
|
11
11
|
export declare const GROUNDCONTROL_PERMISSION: {
|
|
12
|
-
edit:
|
|
13
|
-
|
|
12
|
+
edit: {
|
|
13
|
+
'.groundcontrol/**/*': "allow";
|
|
14
|
+
'*': "ask";
|
|
15
|
+
};
|
|
16
|
+
bash: "ask";
|
|
14
17
|
webfetch: "allow";
|
|
15
18
|
question: "allow";
|
|
16
19
|
};
|
package/dist/index.js
CHANGED
|
@@ -18952,6 +18952,12 @@ var DESIGNER_PROMPT = `You are a Designer - a frontend UI/UX specialist who crea
|
|
|
18952
18952
|
- Leverage component libraries where available
|
|
18953
18953
|
- Prioritize visual excellence\u2014code perfection comes second
|
|
18954
18954
|
|
|
18955
|
+
**NASA Guardrails (High-Reliability Mode)**:
|
|
18956
|
+
- **Destructive Pause**: Stop and request explicit user confirmation before irreversible actions (e.g., force pushing, bulk deletions).
|
|
18957
|
+
- **Pre-Flight Verification**: Always run linters/typechecks (\`bun run check:ci\`, \`bun run typecheck\`) to validate changes before concluding.
|
|
18958
|
+
- **Atomic Checkpoints**: Commit stable states before initiating widespread refactors.
|
|
18959
|
+
- **Escalation Protocol**: If an automated check fails 3+ times, stop guessing and ask the user for guidance.
|
|
18960
|
+
|
|
18955
18961
|
## Output Quality
|
|
18956
18962
|
You're capable of extraordinary creative work. Commit fully to distinctive visions and show what's possible when breaking conventions thoughtfully.`;
|
|
18957
18963
|
function createDesignerAgent(model, customPrompt, customAppendPrompt) {
|
|
@@ -19012,7 +19018,13 @@ Concise answer to the question
|
|
|
19012
19018
|
**Constraints**:
|
|
19013
19019
|
- READ-ONLY: Search and report, don't modify
|
|
19014
19020
|
- Be exhaustive but concise
|
|
19015
|
-
- Include line numbers when relevant
|
|
19021
|
+
- Include line numbers when relevant
|
|
19022
|
+
|
|
19023
|
+
**NASA Guardrails (High-Reliability Mode)**:
|
|
19024
|
+
- **Destructive Pause**: Stop and request explicit user confirmation before irreversible actions (e.g., force pushing, bulk deletions).
|
|
19025
|
+
- **Pre-Flight Verification**: Always run linters/typechecks (\`bun run check:ci\`, \`bun run typecheck\`) to validate changes before concluding.
|
|
19026
|
+
- **Atomic Checkpoints**: Commit stable states before initiating widespread refactors.
|
|
19027
|
+
- **Escalation Protocol**: If an automated check fails 3+ times, stop guessing and ask the user for guidance.`;
|
|
19016
19028
|
function createExplorerAgent(model, customPrompt, customAppendPrompt) {
|
|
19017
19029
|
let prompt = EXPLORER_PROMPT;
|
|
19018
19030
|
if (customPrompt) {
|
|
@@ -19073,7 +19085,13 @@ No changes required
|
|
|
19073
19085
|
<verification>
|
|
19074
19086
|
- Tests passed: [not run - reason]
|
|
19075
19087
|
- LSP diagnostics: [not run - reason]
|
|
19076
|
-
</verification
|
|
19088
|
+
</verification>
|
|
19089
|
+
|
|
19090
|
+
**NASA Guardrails (High-Reliability Mode)**:
|
|
19091
|
+
- **Destructive Pause**: Stop and request explicit user confirmation before irreversible actions (e.g., force pushing, bulk deletions).
|
|
19092
|
+
- **Pre-Flight Verification**: Always run linters/typechecks (\`bun run check:ci\`, \`bun run typecheck\`) to validate changes before concluding.
|
|
19093
|
+
- **Atomic Checkpoints**: Commit stable states before initiating widespread refactors.
|
|
19094
|
+
- **Escalation Protocol**: If an automated check fails 3+ times, stop guessing and ask the user for guidance.`;
|
|
19077
19095
|
function createFixerAgent(model, customPrompt, customAppendPrompt) {
|
|
19078
19096
|
let prompt = FIXER_PROMPT;
|
|
19079
19097
|
if (customPrompt) {
|
|
@@ -20802,8 +20820,11 @@ ${GROUNDCONTROL_HIGH_ACCURACY_MODE}
|
|
|
20802
20820
|
${GROUNDCONTROL_PLAN_TEMPLATE}
|
|
20803
20821
|
${GROUNDCONTROL_BEHAVIORAL_SUMMARY}`;
|
|
20804
20822
|
var GROUNDCONTROL_PERMISSION = {
|
|
20805
|
-
edit:
|
|
20806
|
-
|
|
20823
|
+
edit: {
|
|
20824
|
+
".groundcontrol/**/*": "allow",
|
|
20825
|
+
"*": "ask"
|
|
20826
|
+
},
|
|
20827
|
+
bash: "ask",
|
|
20807
20828
|
webfetch: "allow",
|
|
20808
20829
|
question: "allow"
|
|
20809
20830
|
};
|
|
@@ -20866,7 +20887,13 @@ var LIBRARIAN_PROMPT = `You are Librarian - a research specialist for codebases
|
|
|
20866
20887
|
- Provide evidence-based answers with sources
|
|
20867
20888
|
- Quote relevant code snippets
|
|
20868
20889
|
- Link to official docs when available
|
|
20869
|
-
- Distinguish between official and community patterns
|
|
20890
|
+
- Distinguish between official and community patterns
|
|
20891
|
+
|
|
20892
|
+
**NASA Guardrails (High-Reliability Mode)**:
|
|
20893
|
+
- **Destructive Pause**: Stop and request explicit user confirmation before irreversible actions (e.g., force pushing, bulk deletions).
|
|
20894
|
+
- **Pre-Flight Verification**: Always run linters/typechecks (\`bun run check:ci\`, \`bun run typecheck\`) to validate changes before concluding.
|
|
20895
|
+
- **Atomic Checkpoints**: Commit stable states before initiating widespread refactors.
|
|
20896
|
+
- **Escalation Protocol**: If an automated check fails 3+ times, stop guessing and ask the user for guidance.`;
|
|
20870
20897
|
function createLibrarianAgent(model, customPrompt, customAppendPrompt) {
|
|
20871
20898
|
let prompt = LIBRARIAN_PROMPT;
|
|
20872
20899
|
if (customPrompt) {
|
|
@@ -20907,7 +20934,13 @@ var ORACLE_PROMPT = `You are Oracle - a strategic technical advisor.
|
|
|
20907
20934
|
**Constraints**:
|
|
20908
20935
|
- READ-ONLY: You advise, you don't implement
|
|
20909
20936
|
- Focus on strategy, not execution
|
|
20910
|
-
- Point to specific files/lines when relevant
|
|
20937
|
+
- Point to specific files/lines when relevant
|
|
20938
|
+
|
|
20939
|
+
**NASA Guardrails (High-Reliability Mode)**:
|
|
20940
|
+
- **Destructive Pause**: Stop and request explicit user confirmation before irreversible actions (e.g., force pushing, bulk deletions).
|
|
20941
|
+
- **Pre-Flight Verification**: Always run linters/typechecks (\`bun run check:ci\`, \`bun run typecheck\`) to validate changes before concluding.
|
|
20942
|
+
- **Atomic Checkpoints**: Commit stable states before initiating widespread refactors.
|
|
20943
|
+
- **Escalation Protocol**: If an automated check fails 3+ times, stop guessing and ask the user for guidance.`;
|
|
20911
20944
|
function createOracleAgent(model, customPrompt, customAppendPrompt) {
|
|
20912
20945
|
let prompt = ORACLE_PROMPT;
|
|
20913
20946
|
if (customPrompt) {
|
|
@@ -21052,6 +21085,12 @@ Balance: respect dependencies, avoid parallelizing what must be sequential.
|
|
|
21052
21085
|
- Confirm specialists completed successfully
|
|
21053
21086
|
- Verify solution meets requirements
|
|
21054
21087
|
|
|
21088
|
+
## NASA Guardrails (High-Reliability Mode)
|
|
21089
|
+
1. **Destructive Pause:** Stop and request explicit user confirmation before irreversible actions (e.g., force pushing, bulk deletions).
|
|
21090
|
+
2. **Pre-Flight Verification:** Always run linters/typechecks (\`bun run check:ci\`, \`bun run typecheck\`) to validate changes before concluding.
|
|
21091
|
+
3. **Atomic Checkpoints:** Commit stable states before initiating widespread refactors.
|
|
21092
|
+
4. **Escalation Protocol:** If an automated check fails 3+ times, stop guessing and ask the user for guidance.
|
|
21093
|
+
|
|
21055
21094
|
## Agent Role Mapping
|
|
21056
21095
|
When a workflow calls for an **implementer** subagent: dispatch \`@fixer\`. Fixer has enforced constraints (no research, no delegation, structured output) that match the implementer role exactly.
|
|
21057
21096
|
When a workflow calls for a **reviewer** subagent: dispatch \`@oracle\`. Oracle has the depth for architectural review and access to code review skills.
|
|
@@ -23104,13 +23143,13 @@ function createAutoUpdateCheckerHook(ctx, options = {}) {
|
|
|
23104
23143
|
const displayVersion = localDevVersion ?? cachedVersion;
|
|
23105
23144
|
if (localDevVersion) {
|
|
23106
23145
|
if (showStartupToast) {
|
|
23107
|
-
showToast(ctx, `OMO-
|
|
23146
|
+
showToast(ctx, `OMO-Groundcontrol ${displayVersion} (dev)`, "Running in local development mode.", "info");
|
|
23108
23147
|
}
|
|
23109
23148
|
log("[auto-update-checker] Local development mode");
|
|
23110
23149
|
return;
|
|
23111
23150
|
}
|
|
23112
23151
|
if (showStartupToast) {
|
|
23113
|
-
showToast(ctx, `OMO-
|
|
23152
|
+
showToast(ctx, `OMO-Groundcontrol ${displayVersion ?? "unknown"}`, "oh-my-groundcontrol is active.", "info");
|
|
23114
23153
|
}
|
|
23115
23154
|
runBackgroundUpdateCheck(ctx, autoUpdate).catch((err) => {
|
|
23116
23155
|
log("[auto-update-checker] Background update check failed:", err);
|
|
@@ -23143,14 +23182,14 @@ async function runBackgroundUpdateCheck(ctx, autoUpdate) {
|
|
|
23143
23182
|
}
|
|
23144
23183
|
log(`[auto-update-checker] Update available (${channel}): ${currentVersion} \u2192 ${latestVersion}`);
|
|
23145
23184
|
if (!autoUpdate) {
|
|
23146
|
-
showToast(ctx, `OMO-
|
|
23185
|
+
showToast(ctx, `OMO-Groundcontrol ${latestVersion}`, `v${latestVersion} available. Restart to apply.`, "info", 8000);
|
|
23147
23186
|
log("[auto-update-checker] Auto-update disabled, notification only");
|
|
23148
23187
|
return;
|
|
23149
23188
|
}
|
|
23150
23189
|
if (pluginInfo.isPinned) {
|
|
23151
23190
|
const updated = updatePinnedVersion(pluginInfo.configPath, pluginInfo.entry, latestVersion);
|
|
23152
23191
|
if (!updated) {
|
|
23153
|
-
showToast(ctx, `OMO-
|
|
23192
|
+
showToast(ctx, `OMO-Groundcontrol ${latestVersion}`, `v${latestVersion} available. Restart to apply.`, "info", 8000);
|
|
23154
23193
|
log("[auto-update-checker] Failed to update pinned version in config");
|
|
23155
23194
|
return;
|
|
23156
23195
|
}
|
|
@@ -23159,11 +23198,11 @@ async function runBackgroundUpdateCheck(ctx, autoUpdate) {
|
|
|
23159
23198
|
invalidatePackage(PACKAGE_NAME);
|
|
23160
23199
|
const installSuccess = await runBunInstallSafe(ctx);
|
|
23161
23200
|
if (installSuccess) {
|
|
23162
|
-
showToast(ctx, "OMO-
|
|
23201
|
+
showToast(ctx, "OMO-Groundcontrol Updated!", `v${currentVersion} \u2192 v${latestVersion}
|
|
23163
23202
|
Restart OpenCode to apply.`, "success", 8000);
|
|
23164
23203
|
log(`[auto-update-checker] Update installed: ${currentVersion} \u2192 ${latestVersion}`);
|
|
23165
23204
|
} else {
|
|
23166
|
-
showToast(ctx, `OMO-
|
|
23205
|
+
showToast(ctx, `OMO-Groundcontrol ${latestVersion}`, `v${latestVersion} available. Restart to apply.`, "info", 8000);
|
|
23167
23206
|
log("[auto-update-checker] bun install failed; update not installed");
|
|
23168
23207
|
}
|
|
23169
23208
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frenchtoastman/oh-my-groundcontrol",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.0.11",
|
|
4
|
+
"description": "An OpenCode plugin for multi-agent orchestration for structured planning with NASA-style guardrails.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"bin": {
|