fdeops 5.1.8 → 5.1.9

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 (79) hide show
  1. package/bin/generate-skills.js +9 -6
  2. package/bin/skill-catalog.js +2 -2
  3. package/bin/skill-ui.js +47 -0
  4. package/mcp/fdeops-ingest/package.json +1 -1
  5. package/package.json +1 -1
  6. package/plugin.json +1 -1
  7. package/skills/audit/.fde-generated.json +1 -0
  8. package/skills/audit/agents/openai.yaml +4 -0
  9. package/skills/board-memo/.fde-generated.json +1 -0
  10. package/skills/board-memo/agents/openai.yaml +4 -0
  11. package/skills/brief/.fde-generated.json +1 -0
  12. package/skills/brief/agents/openai.yaml +4 -0
  13. package/skills/build/.fde-generated.json +2 -1
  14. package/skills/build/SKILL.md +2 -2
  15. package/skills/build/agents/openai.yaml +4 -0
  16. package/skills/business-case/.fde-generated.json +1 -0
  17. package/skills/business-case/agents/openai.yaml +4 -0
  18. package/skills/connect/.fde-generated.json +1 -0
  19. package/skills/connect/agents/openai.yaml +4 -0
  20. package/skills/dashboard/.fde-generated.json +1 -0
  21. package/skills/dashboard/agents/openai.yaml +4 -0
  22. package/skills/debrief/.fde-generated.json +1 -0
  23. package/skills/debrief/agents/openai.yaml +4 -0
  24. package/skills/debug/.fde-generated.json +2 -1
  25. package/skills/debug/SKILL.md +2 -2
  26. package/skills/debug/agents/openai.yaml +4 -0
  27. package/skills/demo-prep/.fde-generated.json +1 -0
  28. package/skills/demo-prep/agents/openai.yaml +4 -0
  29. package/skills/discover/.fde-generated.json +1 -0
  30. package/skills/discover/agents/openai.yaml +4 -0
  31. package/skills/earn-trust/.fde-generated.json +1 -0
  32. package/skills/earn-trust/agents/openai.yaml +4 -0
  33. package/skills/evaluate/.fde-generated.json +1 -0
  34. package/skills/evaluate/agents/openai.yaml +4 -0
  35. package/skills/fde/agents/openai.yaml +4 -0
  36. package/skills/feedback/.fde-generated.json +1 -0
  37. package/skills/feedback/agents/openai.yaml +4 -0
  38. package/skills/handoff/.fde-generated.json +1 -0
  39. package/skills/handoff/agents/openai.yaml +4 -0
  40. package/skills/ingest/.fde-generated.json +1 -0
  41. package/skills/ingest/agents/openai.yaml +4 -0
  42. package/skills/integrate/.fde-generated.json +1 -0
  43. package/skills/integrate/agents/openai.yaml +4 -0
  44. package/skills/options/.fde-generated.json +1 -0
  45. package/skills/options/agents/openai.yaml +4 -0
  46. package/skills/plan/.fde-generated.json +1 -0
  47. package/skills/plan/agents/openai.yaml +4 -0
  48. package/skills/poc/.fde-generated.json +1 -0
  49. package/skills/poc/agents/openai.yaml +4 -0
  50. package/skills/prioritize/.fde-generated.json +1 -0
  51. package/skills/prioritize/agents/openai.yaml +4 -0
  52. package/skills/qa/.fde-generated.json +1 -0
  53. package/skills/qa/agents/openai.yaml +4 -0
  54. package/skills/readout/.fde-generated.json +1 -0
  55. package/skills/readout/agents/openai.yaml +4 -0
  56. package/skills/red-team/.fde-generated.json +1 -0
  57. package/skills/red-team/agents/openai.yaml +4 -0
  58. package/skills/rescue/.fde-generated.json +1 -0
  59. package/skills/rescue/agents/openai.yaml +4 -0
  60. package/skills/review/.fde-generated.json +1 -0
  61. package/skills/review/agents/openai.yaml +4 -0
  62. package/skills/rollback/.fde-generated.json +1 -0
  63. package/skills/rollback/agents/openai.yaml +4 -0
  64. package/skills/runbook/.fde-generated.json +1 -0
  65. package/skills/runbook/agents/openai.yaml +4 -0
  66. package/skills/scope/.fde-generated.json +1 -0
  67. package/skills/scope/agents/openai.yaml +4 -0
  68. package/skills/score-use-cases/.fde-generated.json +1 -0
  69. package/skills/score-use-cases/agents/openai.yaml +4 -0
  70. package/skills/ship/.fde-generated.json +1 -0
  71. package/skills/ship/agents/openai.yaml +4 -0
  72. package/skills/switch-clients/.fde-generated.json +1 -0
  73. package/skills/switch-clients/agents/openai.yaml +4 -0
  74. package/skills/test-assumptions/.fde-generated.json +1 -0
  75. package/skills/test-assumptions/agents/openai.yaml +4 -0
  76. package/skills/what-breaks/.fde-generated.json +1 -0
  77. package/skills/what-breaks/agents/openai.yaml +4 -0
  78. package/skills/who-decides/.fde-generated.json +1 -0
  79. package/skills/who-decides/agents/openai.yaml +4 -0
@@ -4,6 +4,7 @@ const fs = require('node:fs')
4
4
  const path = require('node:path')
5
5
  const { createHash } = require('node:crypto')
6
6
  const catalog = require('./skill-catalog')
7
+ const { interfaceYaml } = require('./skill-ui')
7
8
  const root = path.resolve(__dirname, '..')
8
9
  const source = path.join(root, 'skills/fde/references')
9
10
 
@@ -44,6 +45,8 @@ function entrypoint(item) {
44
45
  }
45
46
  function expectedFiles(item, referenceRoot = source) {
46
47
  const files = new Map([['SKILL.md', entrypoint(item)]])
48
+ const ui = interfaceYaml(item.name, item.ui)
49
+ if (ui) files.set('agents/openai.yaml', ui)
47
50
  for (const ref of referencesFor(item.method, referenceRoot)) files.set(`references/${ref}`, fs.readFileSync(path.join(referenceRoot, ref), 'utf8'))
48
51
  return files
49
52
  }
@@ -59,7 +62,7 @@ function walk(dir, prefix = '') {
59
62
  const rel = prefix + e.name
60
63
  if (e.isSymbolicLink() || (!e.isDirectory() && !e.isFile()) || (e.isFile() && fs.lstatSync(path.join(dir, e.name)).nlink > 1)) throw new Error(`Unsafe generated path: ${path.join(dir, e.name)}`)
61
64
  if (e.isDirectory()) {
62
- if (rel !== 'references') throw new Error(`Unowned generated directory: ${path.join(dir, e.name)}`)
65
+ if (rel !== 'references' && rel !== 'agents') throw new Error(`Unowned generated directory: ${path.join(dir, e.name)}`)
63
66
  entries.push(...walk(path.join(dir, e.name), rel + '/'))
64
67
  } else entries.push(rel)
65
68
  }
@@ -103,7 +106,7 @@ function generate(check = false, options = {}) {
103
106
  if (manifest.generator !== 'bin/generate-skills.js' || manifest.version !== 1 || !manifest.files || Array.isArray(manifest.files) || typeof manifest.files !== 'object') throw new Error(`Invalid ownership manifest: ${name}`)
104
107
  owned = manifest.files
105
108
  for (const [rel, hash] of Object.entries(owned)) {
106
- if (!/^(?:SKILL\.md|references\/[a-z][a-z-]*\.md)$/.test(rel) || !/^[a-f0-9]{64}$/.test(hash)) throw new Error(`Invalid ownership entry: ${name}/${rel}`)
109
+ if (!/^(?:SKILL\.md|agents\/openai\.yaml|references\/[a-z][a-z-]*\.md)$/.test(rel) || !/^[a-f0-9]{64}$/.test(hash)) throw new Error(`Invalid ownership entry: ${name}/${rel}`)
107
110
  }
108
111
  } else {
109
112
  // Migrate 4.1.0 packages conservatively: only the marked entry and exact
@@ -138,11 +141,11 @@ function generate(check = false, options = {}) {
138
141
  fs.mkdirSync(path.dirname(path.join(dest, rel)), { recursive: true })
139
142
  fs.writeFileSync(path.join(dest, rel), body)
140
143
  }
141
- if (!output.size) {
142
- const refs = path.join(dest, 'references')
143
- if (stat(refs)) fs.rmdirSync(refs)
144
- fs.rmdirSync(dest)
144
+ for (const directory of ['references', 'agents']) {
145
+ const target = path.join(dest, directory)
146
+ if (stat(target)?.isDirectory() && fs.readdirSync(target).length === 0) fs.rmdirSync(target)
145
147
  }
148
+ if (!output.size) fs.rmdirSync(dest)
146
149
  }
147
150
  }
148
151
  module.exports = { referencesFor, expectedFiles, generate }
@@ -116,7 +116,7 @@ module.exports = [
116
116
  {
117
117
  "name": "build",
118
118
  "method": "build",
119
- "description": "Implement a scoped customer-facing software change in the existing repository and verify its behavior. Use for delivery work with an understood outcome, not incident response.",
119
+ "description": "Implement a scoped software change for a customer and verify its behavior. Use for delivery work with an understood outcome, not incident response.",
120
120
  "group": "Build and verify",
121
121
  "result": "An implemented change with verification evidence.",
122
122
  "inputMode": "context"
@@ -132,7 +132,7 @@ module.exports = [
132
132
  {
133
133
  "name": "debug",
134
134
  "method": "debug",
135
- "description": "Investigate and repair a reproducible failure in a customer integration or application. Use for diagnosis and regression prevention; follow incident authority for live mitigation.",
135
+ "description": "Investigate a failure, regression or incorrect result in an integration or application, even before it can be reproduced. Use for diagnosis and repair; follow incident authority for live mitigation.",
136
136
  "group": "Build and verify",
137
137
  "result": "A diagnosed failure, repair and regression evidence.",
138
138
  "inputMode": "context"
@@ -0,0 +1,47 @@
1
+ // Optional host UI metadata. Task routing and methods live in skill-catalog.js.
2
+ const entries = {
3
+ brief: ['Customer Brief', 'Clarify the outcome, constraints, and evidence', 'clarify this customer brief and its open questions'],
4
+ audit: ['Engagement Audit', 'Check inherited claims against delivery evidence', 'audit this inherited engagement and its risks'],
5
+ 'who-decides': ['Who Decides', 'Map stakeholders and decision ownership', 'map the stakeholders and decision rights for this work'],
6
+ 'earn-trust': ['Earn Trust', 'Plan credible next steps and appropriate access', 'plan how to earn trust and appropriate customer access'],
7
+ discover: ['Discover', 'Trace the workflow and identify the real problem', 'trace this customer workflow and identify evidence gaps'],
8
+ 'test-assumptions': ['Test Assumptions', 'Find consequential assumptions and test them', 'identify and test the assumptions behind this proposal'],
9
+ 'score-use-cases': ['Score Use Cases', 'Compare customer use cases and their trade-offs', 'compare these customer use cases using the available evidence'],
10
+ poc: ['Proof of Concept', 'Test a delivery uncertainty with a bounded pilot', 'design a bounded proof of concept for this uncertainty'],
11
+ scope: ['Scope', 'Assess new requests against agreed commitments', 'assess this request against the agreed scope'],
12
+ options: ['Delivery Options', 'Compare feasible approaches to a customer problem', 'compare feasible approaches and recommend a delivery path'],
13
+ plan: ['Delivery Plan', 'Sequence delivery into verifiable increments', 'turn this agreed outcome into a sequenced delivery plan'],
14
+ 'business-case': ['Business Case', 'Connect investment decisions to costs and evidence', 'develop a business case with explicit assumptions'],
15
+ prioritize: ['Prioritize', 'Choose immediate priorities and explicit deferrals', 'choose the immediate priorities from this competing work'],
16
+ 'red-team': ['Red Team', 'Challenge a plan with evidence and failure modes', 'stress-test this plan and identify corrective actions'],
17
+ build: ['Build', 'Implement and verify an agreed software change', 'implement this scoped change and verify the agreed behavior'],
18
+ integrate: ['Integrate', 'Prove system connections and failure handling', 'implement this integration and verify its downstream result'],
19
+ debug: ['Debug', 'Investigate failures and verify the repair', 'investigate this failure using the available evidence'],
20
+ review: ['Code Review', 'Review a change for delivery and operational risks', 'review this change against its outcome and operational risks'],
21
+ evaluate: ['Evaluate AI', 'Measure AI workflow behavior and failure modes', 'evaluate this AI workflow using representative cases'],
22
+ qa: ['Journey QA', 'Verify the real customer journey and its results', 'exercise the changed customer journey and report evidence'],
23
+ 'what-breaks': ['What Breaks', 'Assess the blast radius before changing a system', 'assess the impact of this change on dependent systems'],
24
+ rollback: ['Rollback', 'Rehearse recovery and expose remaining gaps', 'prepare a recovery drill within the permitted environment'],
25
+ ship: ['Ship', 'Prepare a controlled release with recovery evidence', 'prepare this increment for an authorized release'],
26
+ readout: ['Sponsor Readout', 'Separate promises, measured results, and acceptance', 'prepare a sponsor readout from the delivery evidence'],
27
+ 'demo-prep': ['Demo Prep', 'Rehearse an evidenced demo with a fallback', 'prepare a customer demo and its failure fallback'],
28
+ debrief: ['Meeting Debrief', 'Extract sourced decisions and next actions', 'turn these meeting notes into sourced decisions and actions'],
29
+ 'board-memo': ['Board Memo', 'Draft an executive account of outcomes and risks', 'draft an executive memo from the engagement evidence'],
30
+ rescue: ['Rescue', 'Triage urgent delivery and engagement failures', 'triage this failing engagement and identify recovery steps'],
31
+ dashboard: ['Engagement Dashboard', 'Review status across existing engagement records', 'review the portfolio using available engagement records'],
32
+ 'switch-clients': ['Switch Clients', 'Refresh customer context and triage competing needs', 'switch to the requested engagement and refresh its context'],
33
+ runbook: ['Operating Runbook', 'Document verified operations and recovery steps', 'draft an operating runbook from these verified procedures'],
34
+ handoff: ['Handoff', 'Transfer operation with evidence and clear ownership', 'prepare an operating handoff with evidence and ownership'],
35
+ feedback: ['Field Feedback', 'Assess field lessons for safe and useful reuse', 'assess this field lesson for reuse or product feedback'],
36
+ connect: ['Connect a Source', 'Check source setup and available host capabilities', 'check the requested source connection and available capabilities'],
37
+ ingest: ['Ingest Notes', 'Prepare sourced engagement updates for review', 'prepare sourced engagement updates from this requested material'],
38
+ }
39
+
40
+ function interfaceYaml(name, fields = entries[name]) {
41
+ if (!fields) return null
42
+ const [displayName, shortDescription, prompt] = fields
43
+ if (typeof displayName !== 'string' || !displayName.trim() || typeof shortDescription !== 'string' || shortDescription.length < 25 || shortDescription.length > 64 || typeof prompt !== 'string' || !prompt.trim()) throw new Error(`Invalid skill UI metadata: ${name}`)
44
+ // JSON string literals are also YAML double-quoted scalars; no parser dependency.
45
+ return `interface:\n display_name: ${JSON.stringify(displayName)}\n short_description: ${JSON.stringify(shortDescription)}\n default_prompt: ${JSON.stringify(`Use $${name} to ${prompt}.`)}\n`
46
+ }
47
+ module.exports = { entries, interfaceYaml }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fdeops-ingest-mcp",
3
- "version": "5.1.8",
3
+ "version": "5.1.9",
4
4
  "private": true,
5
5
  "description": "Thin stdio MCP sink for FDEOps ingest (stage \u2192 propose \u2192 apply). Zero runtime dependencies.",
6
6
  "bin": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fdeops",
3
- "version": "5.1.8",
3
+ "version": "5.1.9",
4
4
  "description": "Forward deployed engineering skills for AI coding agents. Use focused task skills or @fde for discovery, implementation, verification and handoff, with local engagement records.",
5
5
  "bin": {
6
6
  "fdeops": "bin/install.js",
package/plugin.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
3
  "name": "fdeops",
4
- "version": "5.1.8",
4
+ "version": "5.1.9",
5
5
  "description": "Forward deployed engineering skills for AI coding agents. Use focused task skills or @fde for discovery, implementation, verification and handoff, with local engagement records.",
6
6
  "author": {
7
7
  "name": "Subash Natarajan",
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "b0dee139ba4f681a61eb0c3d8c802f06857502fd479843edb8e3b8cb27229ae5",
6
+ "agents/openai.yaml": "3b08e2e6a4149545da08238463955501bc60b7bf628cf4e344e893330590bbde",
6
7
  "references/audit.md": "ed32ea78cbccb100742dd838e8cf4cd4b6f33ad44b3de7424fc624670d571dbc",
7
8
  "references/discover.md": "f65aa11a539b4dbbed70cfaa94ec2a35595aa9a2d0282790510b933ac9c721ce",
8
9
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Engagement Audit"
3
+ short_description: "Check inherited claims against delivery evidence"
4
+ default_prompt: "Use $audit to audit this inherited engagement and its risks."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "5782488d9878335cdc1db68c08eccd613486370164284ff11d93422eced6423a",
6
+ "agents/openai.yaml": "a3ce2dc79d3732da6c9aa2d45d09541c09c8f7bdf44f34c6603b5dbaf8624095",
6
7
  "references/board-memo.md": "44eb3c27f164da63af694591025b3fc96bb23d149c29de400997c1653e3322f8",
7
8
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
8
9
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Board Memo"
3
+ short_description: "Draft an executive account of outcomes and risks"
4
+ default_prompt: "Use $board-memo to draft an executive memo from the engagement evidence."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "5d88b9818951f8a8a44c39ad2b36ccdca74fef5e6ed31e67788b50d3ca1bb006",
6
+ "agents/openai.yaml": "8dc0b43545004419bad49e1d50cd3beb968bbcc24baacdaf7fb7304a5fd03bba",
6
7
  "references/land.md": "7a82ac999d23b51b602cd815777a853c4879ca8be40dc6c84c66f154d1f77951",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Customer Brief"
3
+ short_description: "Clarify the outcome, constraints, and evidence"
4
+ default_prompt: "Use $brief to clarify this customer brief and its open questions."
@@ -2,7 +2,8 @@
2
2
  "generator": "bin/generate-skills.js",
3
3
  "version": 1,
4
4
  "files": {
5
- "SKILL.md": "245c53b404549ed73fd6ef532e48c002de7d20a6a93eaca6c0714c4e4d14ba92",
5
+ "SKILL.md": "77570e69b8d708d60cd6ab1dcc79c95a75824ab668f60a83a0dedbe668de2a70",
6
+ "agents/openai.yaml": "abd0a33ab4efa25ea038932d37eae2faa2527baa96ebae8732ea90f1ebc3865e",
6
7
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
7
8
  "references/debug.md": "3273a921a98522431ae821a283814897270c719cbfab83d14b99175537d869e5",
8
9
  "references/eval-pack.md": "0590b85d3cae0903c6b1274540c92eaa2a4373047e8a0548d6942516ef0bb9e1",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: build
3
- description: Implement a scoped customer-facing software change in the existing repository and verify its behavior. Use for delivery work with an understood outcome, not incident response.
3
+ description: Implement a scoped software change for a customer and verify its behavior. Use for delivery work with an understood outcome, not incident response.
4
4
  ---
5
5
 
6
6
  # build
@@ -9,7 +9,7 @@ description: Implement a scoped customer-facing software change in the existing
9
9
 
10
10
  ## Purpose
11
11
 
12
- Implement a scoped customer-facing software change in the existing repository and verify its behavior. Use for delivery work with an understood outcome, not incident response.
12
+ Implement a scoped software change for a customer and verify its behavior. Use for delivery work with an understood outcome, not incident response.
13
13
 
14
14
  Before investigating or acting:
15
15
  1. Read [the task context contract](references/task-context.md).
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Build"
3
+ short_description: "Implement and verify an agreed software change"
4
+ default_prompt: "Use $build to implement this scoped change and verify the agreed behavior."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "1105f7e78b5e73e54aafb8150e03be8c3ccd3443bc3ae667555763a839c1abe4",
6
+ "agents/openai.yaml": "dd2676346caea1b53ae2bee6662aea064eea74c8ca6edf721382526f5fc42ef5",
6
7
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Business Case"
3
+ short_description: "Connect investment decisions to costs and evidence"
4
+ default_prompt: "Use $business-case to develop a business case with explicit assumptions."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "1bfb43ee4b7d5633d8ce996d4ce3c12a75df09e9bb8457ab35597f48f85b2beb",
6
+ "agents/openai.yaml": "6be7812fcf2f56c9fc52b3fd0f0899e3a93a7ee482a901c48b6422e71f326fed",
6
7
  "references/connect.md": "37ad703ece7fe3596be4d5d3697cc4ba5e6062615f9576733c20d055fc3e4927",
7
8
  "references/debrief.md": "2d2db9a177f5341a9a2721a9d6ea32a6d07e7e982e621429ca408a38bc5617c1",
8
9
  "references/ingest.md": "24880bc3d95cda09ec6c2f5edebd17fba99deb912f93e15c8b715a287283da84",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Connect a Source"
3
+ short_description: "Check source setup and available host capabilities"
4
+ default_prompt: "Use $connect to check the requested source connection and available capabilities."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "e06df3f2da2586c14e12f2599091231083c0a2f43af70b427c0ab307641610a3",
6
+ "agents/openai.yaml": "abbfc923f66cea302d6fb06b02ff5d2a9f9faa24f30904344785abab1e627999",
6
7
  "references/dashboard.md": "dd842c17a2689a6017fecf34a6a24ee5cd40f504af4397eaeb2493ef4ffceda0",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Engagement Dashboard"
3
+ short_description: "Review status across existing engagement records"
4
+ default_prompt: "Use $dashboard to review the portfolio using available engagement records."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "f17036d3f4494abf5505a408d23d2b6fb5e7b34e2bc1217eb5f3603fcef1e5e5",
6
+ "agents/openai.yaml": "b56f5462c41c09ff1ff3022ed13ebf43749bee3c0578e32d5853d2580998939c",
6
7
  "references/connect.md": "37ad703ece7fe3596be4d5d3697cc4ba5e6062615f9576733c20d055fc3e4927",
7
8
  "references/debrief.md": "2d2db9a177f5341a9a2721a9d6ea32a6d07e7e982e621429ca408a38bc5617c1",
8
9
  "references/ingest.md": "24880bc3d95cda09ec6c2f5edebd17fba99deb912f93e15c8b715a287283da84",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Meeting Debrief"
3
+ short_description: "Extract sourced decisions and next actions"
4
+ default_prompt: "Use $debrief to turn these meeting notes into sourced decisions and actions."
@@ -2,7 +2,8 @@
2
2
  "generator": "bin/generate-skills.js",
3
3
  "version": 1,
4
4
  "files": {
5
- "SKILL.md": "4a5cb9e98910f043bd8f4482540fd68387b45878946379514d4d581cc813c61f",
5
+ "SKILL.md": "00b6f8c7c56be7a665f9401c58319fc4cd344e1c865d88021c116d94149a4a35",
6
+ "agents/openai.yaml": "f9178e65a1e2e9ee27f2f5917a36a50e3ebe64bd6e331b43379efcf1c7d5aac3",
6
7
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
7
8
  "references/debug.md": "3273a921a98522431ae821a283814897270c719cbfab83d14b99175537d869e5",
8
9
  "references/eval-pack.md": "0590b85d3cae0903c6b1274540c92eaa2a4373047e8a0548d6942516ef0bb9e1",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: debug
3
- description: Investigate and repair a reproducible failure in a customer integration or application. Use for diagnosis and regression prevention; follow incident authority for live mitigation.
3
+ description: Investigate a failure, regression or incorrect result in an integration or application, even before it can be reproduced. Use for diagnosis and repair; follow incident authority for live mitigation.
4
4
  ---
5
5
 
6
6
  # debug
@@ -9,7 +9,7 @@ description: Investigate and repair a reproducible failure in a customer integra
9
9
 
10
10
  ## Purpose
11
11
 
12
- Investigate and repair a reproducible failure in a customer integration or application. Use for diagnosis and regression prevention; follow incident authority for live mitigation.
12
+ Investigate a failure, regression or incorrect result in an integration or application, even before it can be reproduced. Use for diagnosis and repair; follow incident authority for live mitigation.
13
13
 
14
14
  Before investigating or acting:
15
15
  1. Read [the task context contract](references/task-context.md).
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Debug"
3
+ short_description: "Investigate failures and verify the repair"
4
+ default_prompt: "Use $debug to investigate this failure using the available evidence."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "a9c477a1f2f2d44ba1893ea1299c3b30f07c772064b8c28d5bb31d87f032ef67",
6
+ "agents/openai.yaml": "14df03f4ac1652773b277fbe8e9c501f253dbe550b29f4df1ec0e15a9b6eb6aa",
6
7
  "references/demo-prep.md": "2166d4104c8da995ea1dbdf27e36fe288a83c6e18ff1de2650fb0eec769ec84f",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Demo Prep"
3
+ short_description: "Rehearse an evidenced demo with a fallback"
4
+ default_prompt: "Use $demo-prep to prepare a customer demo and its failure fallback."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "bed4347f467126b6aafd035b2e91c05f37ae3fe5ef6dc9fc2b1a313fce4ccd8d",
6
+ "agents/openai.yaml": "77306e5aa72884b8c06afe91ae4991910bf3ad38a72375c2fc5251fc7744789a",
6
7
  "references/audit.md": "ed32ea78cbccb100742dd838e8cf4cd4b6f33ad44b3de7424fc624670d571dbc",
7
8
  "references/discover.md": "f65aa11a539b4dbbed70cfaa94ec2a35595aa9a2d0282790510b933ac9c721ce",
8
9
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Discover"
3
+ short_description: "Trace the workflow and identify the real problem"
4
+ default_prompt: "Use $discover to trace this customer workflow and identify evidence gaps."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "a739454cd58e6beba57877e8b1c0d888d1068617b63959014c7b142fd12d68c3",
6
+ "agents/openai.yaml": "3157721445a01f3f840106c23f775305155946669cf44d056e5eb4641f47a84d",
6
7
  "references/earn-trust.md": "ec31c339a39d9a7f3855ff77478684bc1d6cae473362489456f0c17b64c33399",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Earn Trust"
3
+ short_description: "Plan credible next steps and appropriate access"
4
+ default_prompt: "Use $earn-trust to plan how to earn trust and appropriate customer access."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "396110a1cb9a555b4096ef77bf45e531b60d78b18bd617c654f19c8e07506ce1",
6
+ "agents/openai.yaml": "731f3c81d46444af542369f0aa27736d24530d00fc1aa717436ddefe3f3bdef7",
6
7
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
7
8
  "references/debug.md": "3273a921a98522431ae821a283814897270c719cbfab83d14b99175537d869e5",
8
9
  "references/eval-pack.md": "0590b85d3cae0903c6b1274540c92eaa2a4373047e8a0548d6942516ef0bb9e1",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Evaluate AI"
3
+ short_description: "Measure AI workflow behavior and failure modes"
4
+ default_prompt: "Use $evaluate to evaluate this AI workflow using representative cases."
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "FDE Engagement Coordinator"
3
+ short_description: "Guide customer delivery with evidence and memory"
4
+ default_prompt: "Use $fde to identify the next useful step in this customer engagement."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "7d49a9e89736e35c2aaf10c78b10be365bdf91af1aaf99430de6069e96069d55",
6
+ "agents/openai.yaml": "6b8d024e9ea9676a2607b76a6f1fcd2fbcba585af2990b1172dbdb8cec0364c6",
6
7
  "references/encode-pattern.md": "3be7bf9d0f69af31659423c54d6023a4af1556e2ce200fb025bf64d0757de4d8",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Field Feedback"
3
+ short_description: "Assess field lessons for safe and useful reuse"
4
+ default_prompt: "Use $feedback to assess this field lesson for reuse or product feedback."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "c4ac99ee1517c0674e5324b289521116c58a9e0ac3de22c229be8da83438f4db",
6
+ "agents/openai.yaml": "93ac049cf1a9d0fdfdf67d34ca6d3dd33800e91334f38bb303828eab8c4b3aaf",
6
7
  "references/close.md": "b3dbc1ecef12ee1c9d298e32a21d87ce61c9f6c88039d7a8b19970c6e3f21254",
7
8
  "references/encode-pattern.md": "3be7bf9d0f69af31659423c54d6023a4af1556e2ce200fb025bf64d0757de4d8",
8
9
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Handoff"
3
+ short_description: "Transfer operation with evidence and clear ownership"
4
+ default_prompt: "Use $handoff to prepare an operating handoff with evidence and ownership."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "631bdeb6ec45d8844f59519f9d3cca89c24e65c51721eb0a67f32fc5cfc979a2",
6
+ "agents/openai.yaml": "224565b9305f0dbd5c32136c6de71d637c471d46e108977ff6de9f328024ccd5",
6
7
  "references/connect.md": "37ad703ece7fe3596be4d5d3697cc4ba5e6062615f9576733c20d055fc3e4927",
7
8
  "references/debrief.md": "2d2db9a177f5341a9a2721a9d6ea32a6d07e7e982e621429ca408a38bc5617c1",
8
9
  "references/ingest.md": "24880bc3d95cda09ec6c2f5edebd17fba99deb912f93e15c8b715a287283da84",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Ingest Notes"
3
+ short_description: "Prepare sourced engagement updates for review"
4
+ default_prompt: "Use $ingest to prepare sourced engagement updates from this requested material."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "63cc6cef59cadd45b36a080ac97f1d0bc8e777b12f39a9a6f62b63dfb5029b2d",
6
+ "agents/openai.yaml": "20f8c8f7ab4bc2730260052e378a86c062b503a3ba26fd4b7a37559756b0f756",
6
7
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
7
8
  "references/debug.md": "3273a921a98522431ae821a283814897270c719cbfab83d14b99175537d869e5",
8
9
  "references/eval-pack.md": "0590b85d3cae0903c6b1274540c92eaa2a4373047e8a0548d6942516ef0bb9e1",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Integrate"
3
+ short_description: "Prove system connections and failure handling"
4
+ default_prompt: "Use $integrate to implement this integration and verify its downstream result."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "0c51c5421875b17c66c4fdb03a33e3705da52a0c649dd138c4c4cd3f3c92292a",
6
+ "agents/openai.yaml": "ff5da2d5215943e5c4e2a1339c11101035ed2741ded38e443af5180239e2a24b",
6
7
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5",
8
9
  "references/test-assumptions.md": "bf60d8bb4c0701fcffb196d78f7f6c8b1c472fc877fb2caf41058fbf8e2415a1",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Delivery Options"
3
+ short_description: "Compare feasible approaches to a customer problem"
4
+ default_prompt: "Use $options to compare feasible approaches and recommend a delivery path."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "88254d8bc2f58f4fcdd610dd7c111854dccf3ef488cfae85a4f81e90e25d1c96",
6
+ "agents/openai.yaml": "09f79a8a6f59741be07ae42adb9187ef790c1c4dd0341adc22ca70cd043e9ac1",
6
7
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
7
8
  "references/plan.md": "6c37976169723f93d3554092979569a9640bcf02bd179bad52b17815c1c30f86",
8
9
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Delivery Plan"
3
+ short_description: "Sequence delivery into verifiable increments"
4
+ default_prompt: "Use $plan to turn this agreed outcome into a sequenced delivery plan."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "f72f8cf960aa85150f85e316bca0f306e3e57c140ed9f49ed9fa04dd0671662f",
6
+ "agents/openai.yaml": "d5b07161e8fd27eae7af233da4b872719cf723696cbb30614909bcbf6550bbf3",
6
7
  "references/audit.md": "ed32ea78cbccb100742dd838e8cf4cd4b6f33ad44b3de7424fc624670d571dbc",
7
8
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
8
9
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Proof of Concept"
3
+ short_description: "Test a delivery uncertainty with a bounded pilot"
4
+ default_prompt: "Use $poc to design a bounded proof of concept for this uncertainty."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "07e8a3b485762e6b6897472fe4c934cb63ed0240d8258761be445729714d782d",
6
+ "agents/openai.yaml": "3cfc01668b1bc6ec42d429e9730c68fd01520a7d15ea4289dee265e16bcd6b55",
6
7
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
7
8
  "references/pick-three.md": "fa5a5f6db94c72c5a1c6419276d0f7c13ff3067ce075a074af020f736fe3fad8",
8
9
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Prioritize"
3
+ short_description: "Choose immediate priorities and explicit deferrals"
4
+ default_prompt: "Use $prioritize to choose the immediate priorities from this competing work."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "ee9d9ccd8b1ccb982e390530bc193d446a6fdb3a1d630276d6dcd00cf9033948",
6
+ "agents/openai.yaml": "6c551dbdb5f0d27f908cc6de580a5f0a840dca1e01e1d3feaedd81bd349d8dc9",
6
7
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
7
8
  "references/debug.md": "3273a921a98522431ae821a283814897270c719cbfab83d14b99175537d869e5",
8
9
  "references/eval-pack.md": "0590b85d3cae0903c6b1274540c92eaa2a4373047e8a0548d6942516ef0bb9e1",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Journey QA"
3
+ short_description: "Verify the real customer journey and its results"
4
+ default_prompt: "Use $qa to exercise the changed customer journey and report evidence."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "366e5a14a640459b9e17150e7193a470d5537e03d1cc18f35afda1b8918329ba",
6
+ "agents/openai.yaml": "7eed15e7cb50ba726c666313381bb4e108b36f2285dcfdff5a248c6dbcb98b8b",
6
7
  "references/board-memo.md": "44eb3c27f164da63af694591025b3fc96bb23d149c29de400997c1653e3322f8",
7
8
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
8
9
  "references/readout.md": "46856e9452ef3928a394fc89425bf4b9ba912f5586584537345a10f6c3a20903",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Sponsor Readout"
3
+ short_description: "Separate promises, measured results, and acceptance"
4
+ default_prompt: "Use $readout to prepare a sponsor readout from the delivery evidence."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "e406016f3cf7b715084bde0081bec03706a695e6272ada2e51ff3cb9d5194de5",
6
+ "agents/openai.yaml": "c6cac62d94f5294f981de12539dca0a8aa601cea3357fedd94083f4fd1cb0d48",
6
7
  "references/red-team.md": "31aaa96f2bac337daa8fc8abf1ddbef745d7ab7a8b77776d2fbb2dd59f4782ce",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Red Team"
3
+ short_description: "Challenge a plan with evidence and failure modes"
4
+ default_prompt: "Use $red-team to stress-test this plan and identify corrective actions."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "de58cdfb46219c71c85b4e940bffe0e52d8511f4dede803d0efe1bf46aa5ac5c",
6
+ "agents/openai.yaml": "d88d5433332c8269c8342589bc88ef9df7b0f7b0224e4b8ee5a00bc5d96f5e2e",
6
7
  "references/rescue.md": "3af07633b82dc1022bafc86173f6c55da81501317e25c9ac8980cfcb04b27df3",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Rescue"
3
+ short_description: "Triage urgent delivery and engagement failures"
4
+ default_prompt: "Use $rescue to triage this failing engagement and identify recovery steps."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "5a03a3842983d32da658da2e36466f64ad2474af2b189f71e596c586e91bc502",
6
+ "agents/openai.yaml": "d928b571b9ebbb29ea8acd2e38769087288e2500f0ce9ab7f20f3f57a0e3d8d2",
6
7
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
7
8
  "references/debug.md": "3273a921a98522431ae821a283814897270c719cbfab83d14b99175537d869e5",
8
9
  "references/eval-pack.md": "0590b85d3cae0903c6b1274540c92eaa2a4373047e8a0548d6942516ef0bb9e1",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Code Review"
3
+ short_description: "Review a change for delivery and operational risks"
4
+ default_prompt: "Use $review to review this change against its outcome and operational risks."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "19645edc8853a4b1ca7f3dacbf48ed553d7f630939c81c9254c00808fdebedc8",
6
+ "agents/openai.yaml": "d8fa5d46f05dd1501993f40b0c8e205f061c5b4de754046d9059cb0c3d8c88f9",
6
7
  "references/rollback.md": "cdde85caeb8e556825d0c3a156cd16d6e41550931984429e4978486ee91854cd",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Rollback"
3
+ short_description: "Rehearse recovery and expose remaining gaps"
4
+ default_prompt: "Use $rollback to prepare a recovery drill within the permitted environment."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "36843356c2e89e2a9205a4edf47afb8fd489d2f719c72241e3fdc3209829d2d8",
6
+ "agents/openai.yaml": "53922bbe55ba23dc812c9bef311fbef238e2e25252100bdac7a8bd4f6c5e2780",
6
7
  "references/close.md": "b3dbc1ecef12ee1c9d298e32a21d87ce61c9f6c88039d7a8b19970c6e3f21254",
7
8
  "references/encode-pattern.md": "3be7bf9d0f69af31659423c54d6023a4af1556e2ce200fb025bf64d0757de4d8",
8
9
  "references/runbook.md": "d32a40113941c603b97f09eabfd0e25afd25129102c6b07fa91a04fb4f8e93e7",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Operating Runbook"
3
+ short_description: "Document verified operations and recovery steps"
4
+ default_prompt: "Use $runbook to draft an operating runbook from these verified procedures."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "544424180d2e924e21e98e94c1d6a35c067176ff9876f6c11415638e041f89f5",
6
+ "agents/openai.yaml": "22b669e628e4401c6b042d17fca25f0259593d90a581e232816c140e788306ec",
6
7
  "references/hold-scope.md": "7779188df1d7f5aef9f878719499f9c0e974deba45289329ae8fa3d62e6c5090",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Scope"
3
+ short_description: "Assess new requests against agreed commitments"
4
+ default_prompt: "Use $scope to assess this request against the agreed scope."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "d3abc46b68361f6d808191b50183d41eec65eac31cba5d53ef1e22a2ccd7b32f",
6
+ "agents/openai.yaml": "8f4af12758edb1a4648bb7917ef4c52eb4eb209a3917ae3e04904cdd5fd4dec0",
6
7
  "references/business-case.md": "32e000e8351cd59f9eaad8be40babb276df69948ea4f81e01a4672e47f48cb25",
7
8
  "references/score-use-cases.md": "bb304cf2de26a2df0b9f2a299e3a6b2760ebce15b8b523d9cb4a584cc26038f8",
8
9
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Score Use Cases"
3
+ short_description: "Compare customer use cases and their trade-offs"
4
+ default_prompt: "Use $score-use-cases to compare these customer use cases using the available evidence."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "545fa51462ad174899b9a2007daf61f1a56c65d0d514292a1951569d1657912a",
6
+ "agents/openai.yaml": "f114bfdaf8ae71139fe5903965187dca326edb015c709a8e9d74ddd771ac8a6f",
6
7
  "references/build.md": "03c52eda90642c62053b53ef1e85c97b4e647600f454aee9da0e415c9d98903e",
7
8
  "references/debug.md": "3273a921a98522431ae821a283814897270c719cbfab83d14b99175537d869e5",
8
9
  "references/eval-pack.md": "0590b85d3cae0903c6b1274540c92eaa2a4373047e8a0548d6942516ef0bb9e1",
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Ship"
3
+ short_description: "Prepare a controlled release with recovery evidence"
4
+ default_prompt: "Use $ship to prepare this increment for an authorized release."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "ebfebe6e5872800c749659aec45af48b2287db2e72c0b914118482e4c73334b5",
6
+ "agents/openai.yaml": "67ecd37a1e5bd57986d800a782aeff8d00171d6d09794b6026d8daf1e2d91e6f",
6
7
  "references/switch-clients.md": "4e8cb763db871b38fece3adaf9d1ac3b995c21dd1d0e463903eaa3854332c389",
7
8
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Switch Clients"
3
+ short_description: "Refresh customer context and triage competing needs"
4
+ default_prompt: "Use $switch-clients to switch to the requested engagement and refresh its context."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "acba10ec77763f1840c3cda95b26e13150683f6a7557a84a93611f2d96cdd389",
6
+ "agents/openai.yaml": "c67e0342caba79241b1872cdfda8341f4949c2bd7672b8d288b529d8e94342b8",
6
7
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5",
7
8
  "references/test-assumptions.md": "bf60d8bb4c0701fcffb196d78f7f6c8b1c472fc877fb2caf41058fbf8e2415a1"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Test Assumptions"
3
+ short_description: "Find consequential assumptions and test them"
4
+ default_prompt: "Use $test-assumptions to identify and test the assumptions behind this proposal."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "cacffe6b01d36cde634be5e7f8a2127d701d3dac90b3000c414a648956839c5e",
6
+ "agents/openai.yaml": "6c4b97d3268698d1eed0b628f9872351f29b91dd47c9de371a12c584983cb0fe",
6
7
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5",
7
8
  "references/what-breaks.md": "bc7f7b0d0dbaa4df520b263f0877474722ab223aac4cd6fd84b5112d9868715d"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "What Breaks"
3
+ short_description: "Assess the blast radius before changing a system"
4
+ default_prompt: "Use $what-breaks to assess the impact of this change on dependent systems."
@@ -3,6 +3,7 @@
3
3
  "version": 1,
4
4
  "files": {
5
5
  "SKILL.md": "f5c97755bdeb42cd18dbc1fc79f1d311521efe99fb599d4ebd72b21b6d1dee74",
6
+ "agents/openai.yaml": "fee09f0f2cc7d0c07a1aefa592e10f046abb8951f157ca3336a6233edd3a61ea",
6
7
  "references/task-context.md": "9066514a50043f3ad888d133d4e8b89b7132551e098cf2c80203c458a80126e5",
7
8
  "references/who-decides.md": "fa1f65d921943e76f42284570004a603488905417d96b4bd52dc6c4a11dd5a97"
8
9
  }
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Who Decides"
3
+ short_description: "Map stakeholders and decision ownership"
4
+ default_prompt: "Use $who-decides to map the stakeholders and decision rights for this work."