clavix 1.5.3 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -72,11 +72,14 @@ Lo, L. S. (2023). "The CLEAR Path: A Framework for Enhancing Information Literac
72
72
  | **Droid CLI** | ✅ | `.factory/commands/` | Fully Supported |
73
73
  | **OpenCode** | ✅ | `.opencode/command/` | Fully Supported |
74
74
  | **Amp** | ✅ | `.agents/commands/` | Fully Supported |
75
+ | **Crush CLI** | ✅ | `.crush/commands/clavix/` | Fully Supported |
75
76
  | **Universal (agents.md)** | ⚡ No slash commands | `AGENTS.md` | Fully Supported |
76
77
 
77
78
  **Features:**
78
79
  - **Multi-Select Support** - Choose multiple tools during `clavix init` (Space to select, Enter to confirm)
79
80
  - **Provider-Specific Formatting** - Automatically generates commands in each tool's native format
81
+ - Crush CLI uses `$PROMPT` placeholder (vs generic `{{ARGS}}`)
82
+ - Commands accessible via Ctrl+P or `/` in Crush terminal
80
83
  - **Universal Fallback** - `agents.md` provides workflow instructions for tools without slash command support
81
84
  - **Slash Commands** - `/clavix:fast`, `/clavix:deep`, `/clavix:prd`, `/clavix:plan`, `/clavix:implement`, `/clavix:archive`, `/clavix:start`, `/clavix:summarize` available in all supported tools
82
85
  - **Managed Documentation** - Auto-inject and update instructions in `AGENTS.md` and `CLAUDE.md` with safe managed blocks
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAatC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAA8C;IAEhE,MAAM,CAAC,QAAQ,WAEb;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAgLZ,wBAAwB;YAaxB,cAAc;YAWd,oBAAoB;YAqDpB,qBAAqB;YAoBrB,mBAAmB;YAYnB,kBAAkB;IAoChC,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,kBAAkB;CAI3B"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAatC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAA8C;IAEhE,MAAM,CAAC,QAAQ,WAEb;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAqLZ,wBAAwB;YAaxB,cAAc;YAWd,oBAAoB;YAqDpB,qBAAqB;YAoBrB,mBAAmB;YAYnB,kBAAkB;IAoChC,OAAO,CAAC,kBAAkB;IAK1B,OAAO,CAAC,kBAAkB;CAI3B"}
@@ -97,6 +97,10 @@ class Init extends core_1.Command {
97
97
  name: 'Amp (.agents/commands/)',
98
98
  value: 'amp',
99
99
  },
100
+ {
101
+ name: 'Crush CLI (.crush/commands/clavix/)',
102
+ value: 'crush',
103
+ },
100
104
  new inquirer_1.default.Separator(),
101
105
  {
102
106
  name: 'agents.md (Universal - for tools without slash commands)',
@@ -107,6 +111,7 @@ class Init extends core_1.Command {
107
111
  name: 'Octofriend (OCTO.md - optimized for Octofriend)',
108
112
  value: 'octo-md',
109
113
  },
114
+ new inquirer_1.default.Separator(),
110
115
  ],
111
116
  validate: (answer) => {
112
117
  if (answer.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"base-adapter.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/base-adapter.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAI3B;;;GAGG;AACH,8BAAsB,WAAY,YAAW,YAAY;IACvD,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAErC,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAC1C,QAAQ,CAAC,cAAc,IAAI,MAAM;IAEjC;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAsC3C;;;OAGG;IACG,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBnE;;;;OAIG;IACH,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM;IAI1D;;;OAGG;IACG,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjE;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAG3C"}
1
+ {"version":3,"file":"base-adapter.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/base-adapter.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAI3B;;;GAGG;AACH,8BAAsB,WAAY,YAAW,YAAY;IACvD,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAErC,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAC1C,QAAQ,CAAC,cAAc,IAAI,MAAM;IAEjC;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAkD3C;;;OAGG;IACG,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBnE;;;;OAIG;IACH,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM;IAI1D;;;OAGG;IACG,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKjE;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAG3C"}
@@ -53,14 +53,24 @@ class BaseAdapter {
53
53
  // Check if parent directory exists
54
54
  const parentDir = path.dirname(commandPath);
55
55
  if (!(await file_system_1.FileSystem.exists(parentDir))) {
56
- // Check if we can create parent
57
- const grandParent = path.dirname(parentDir);
58
- if (!(await file_system_1.FileSystem.exists(grandParent))) {
59
- errors.push(`Parent directory ${parentDir} does not exist and cannot be created`);
56
+ // Check if we can create parent by finding first existing ancestor
57
+ let ancestorDir = parentDir;
58
+ let canCreate = false;
59
+ // Walk up the directory tree until we find an existing directory
60
+ while (ancestorDir !== '.' && ancestorDir !== '/' && ancestorDir.length > 0) {
61
+ ancestorDir = path.dirname(ancestorDir);
62
+ if (await file_system_1.FileSystem.exists(ancestorDir)) {
63
+ canCreate = true;
64
+ break;
65
+ }
60
66
  }
61
- else {
67
+ // If we reached '.' or '/', it means we can create the directory
68
+ if (ancestorDir === '.' || ancestorDir === '/' || canCreate) {
62
69
  warnings.push(`Parent directory ${parentDir} will be created`);
63
70
  }
71
+ else {
72
+ errors.push(`Parent directory ${parentDir} does not exist and cannot be created`);
73
+ }
64
74
  }
65
75
  // Try to ensure directory exists
66
76
  if (errors.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"base-adapter.js","sourceRoot":"","sources":["../../../src/core/adapters/base-adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAQ7B,yDAAqD;AACrD,+CAAsD;AAEtD;;;GAGG;AACH,MAAsB,WAAW;IAU/B;;;OAGG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE1C,mCAAmC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,CAAC,MAAM,wBAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC1C,gCAAgC;YAChC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,CAAC,CAAC,MAAM,wBAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;gBAC5C,MAAM,CAAC,IAAI,CACT,oBAAoB,SAAS,uCAAuC,CACrE,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,CACX,oBAAoB,SAAS,kBAAkB,CAChD,CAAC;YACJ,CAAC;QACH,CAAC;QAED,iCAAiC;QACjC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC;gBACH,MAAM,wBAAU,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YAC9C,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SACrD,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,SAA4B;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE1C,IAAI,CAAC;YACH,0BAA0B;YAC1B,MAAM,wBAAU,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAExC,6BAA6B;YAC7B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAC7C,MAAM,QAAQ,GAAG,GAAG,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;gBACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;gBAClD,MAAM,wBAAU,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,yBAAgB,CACxB,sBAAsB,IAAI,CAAC,WAAW,cAAc,KAAK,EAAE,EAC3D,UAAU,WAAW,cAAc,CACpC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACO,aAAa,CAAC,QAAyB;QAC/C,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,mBAAmB,CAAC,OAAuB;QAC/C,sCAAsC;QACtC,mCAAmC;IACrC,CAAC;IAED;;OAEG;IACO,WAAW,CAAC,GAAW;QAC/B,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;CACF;AAtGD,kCAsGC"}
1
+ {"version":3,"file":"base-adapter.js","sourceRoot":"","sources":["../../../src/core/adapters/base-adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { BaseAdapter } from './base-adapter';
2
+ import { CommandTemplate } from '../../types/agent';
3
+ /**
4
+ * Crush CLI adapter
5
+ * Commands stored in .crush/commands/clavix/ (supports subdirectories)
6
+ * Uses $PROMPT placeholder for user input (Crush-specific syntax)
7
+ *
8
+ * Reference: https://github.com/charmbracelet/crush/blob/main/COMMANDS.md
9
+ */
10
+ export declare class CrushAdapter extends BaseAdapter {
11
+ readonly name = "crush";
12
+ readonly displayName = "Crush CLI";
13
+ readonly directory = ".crush/commands/clavix";
14
+ readonly fileExtension = ".md";
15
+ readonly features: {
16
+ supportsSubdirectories: boolean;
17
+ supportsFrontmatter: boolean;
18
+ argumentPlaceholder: string;
19
+ };
20
+ /**
21
+ * Detect if Crush is available in the project
22
+ * Checks for .crush directory (project-level commands)
23
+ */
24
+ detectProject(): Promise<boolean>;
25
+ /**
26
+ * Get command path for Crush
27
+ */
28
+ getCommandPath(): string;
29
+ /**
30
+ * Format command content for Crush
31
+ * Replaces generic {{ARGS}} placeholder with Crush-specific $PROMPT
32
+ */
33
+ protected formatCommand(template: CommandTemplate): string;
34
+ }
35
+ //# sourceMappingURL=crush-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crush-adapter.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/crush-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,WAAW;IAC3C,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,WAAW,eAAe;IACnC,QAAQ,CAAC,SAAS,4BAA4B;IAC9C,QAAQ,CAAC,aAAa,SAAS;IAC/B,QAAQ,CAAC,QAAQ;;;;MAIf;IAEF;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC;IAIvC;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;;OAGG;IACH,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM;CAI3D"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CrushAdapter = void 0;
4
+ const base_adapter_1 = require("./base-adapter");
5
+ const file_system_1 = require("../../utils/file-system");
6
+ /**
7
+ * Crush CLI adapter
8
+ * Commands stored in .crush/commands/clavix/ (supports subdirectories)
9
+ * Uses $PROMPT placeholder for user input (Crush-specific syntax)
10
+ *
11
+ * Reference: https://github.com/charmbracelet/crush/blob/main/COMMANDS.md
12
+ */
13
+ class CrushAdapter extends base_adapter_1.BaseAdapter {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.name = 'crush';
17
+ this.displayName = 'Crush CLI';
18
+ this.directory = '.crush/commands/clavix';
19
+ this.fileExtension = '.md';
20
+ this.features = {
21
+ supportsSubdirectories: true,
22
+ supportsFrontmatter: false,
23
+ argumentPlaceholder: '$PROMPT',
24
+ };
25
+ }
26
+ /**
27
+ * Detect if Crush is available in the project
28
+ * Checks for .crush directory (project-level commands)
29
+ */
30
+ async detectProject() {
31
+ return await file_system_1.FileSystem.exists('.crush');
32
+ }
33
+ /**
34
+ * Get command path for Crush
35
+ */
36
+ getCommandPath() {
37
+ return this.directory;
38
+ }
39
+ /**
40
+ * Format command content for Crush
41
+ * Replaces generic {{ARGS}} placeholder with Crush-specific $PROMPT
42
+ */
43
+ formatCommand(template) {
44
+ // Replace Clavix generic placeholder with Crush placeholder
45
+ return template.content.replace(/\{\{ARGS\}\}/g, '$PROMPT');
46
+ }
47
+ }
48
+ exports.CrushAdapter = CrushAdapter;
49
+ //# sourceMappingURL=crush-adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crush-adapter.js","sourceRoot":"","sources":["../../../src/core/adapters/crush-adapter.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,yDAAqD;AAErD;;;;;;GAMG;AACH,MAAa,YAAa,SAAQ,0BAAW;IAA7C;;QACW,SAAI,GAAG,OAAO,CAAC;QACf,gBAAW,GAAG,WAAW,CAAC;QAC1B,cAAS,GAAG,wBAAwB,CAAC;QACrC,kBAAa,GAAG,KAAK,CAAC;QACtB,aAAQ,GAAG;YAClB,sBAAsB,EAAE,IAAI;YAC5B,mBAAmB,EAAE,KAAK;YAC1B,mBAAmB,EAAE,SAAS;SAC/B,CAAC;IAyBJ,CAAC;IAvBC;;;OAGG;IACH,KAAK,CAAC,aAAa;QACjB,OAAO,MAAM,wBAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;OAGG;IACO,aAAa,CAAC,QAAyB;QAC/C,4DAA4D;QAC5D,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;IAC9D,CAAC;CACF;AAlCD,oCAkCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-manager.d.ts","sourceRoot":"","sources":["../../src/core/agent-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAQhE;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAwC;;IAWxD;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI5C;;OAEG;IACH,WAAW,IAAI,YAAY,EAAE;IAI7B;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAY7C;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;IAW1C;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;;OAGG;IACG,gBAAgB,CACpB,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAgBzC;;;OAGG;IACH,iBAAiB,IAAI,KAAK,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CAOH"}
1
+ {"version":3,"file":"agent-manager.d.ts","sourceRoot":"","sources":["../../src/core/agent-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAShE;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAwC;;IAYxD;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAI5C;;OAEG;IACH,WAAW,IAAI,YAAY,EAAE;IAI7B;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIlD;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAY7C;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;IAW1C;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI/B;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;;OAGG;IACG,gBAAgB,CACpB,YAAY,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAgBzC;;;OAGG;IACH,iBAAiB,IAAI,KAAK,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CAOH"}
@@ -6,6 +6,7 @@ const cursor_adapter_1 = require("./adapters/cursor-adapter");
6
6
  const droid_adapter_1 = require("./adapters/droid-adapter");
7
7
  const opencode_adapter_1 = require("./adapters/opencode-adapter");
8
8
  const amp_adapter_1 = require("./adapters/amp-adapter");
9
+ const crush_adapter_1 = require("./adapters/crush-adapter");
9
10
  const errors_1 = require("../types/errors");
10
11
  /**
11
12
  * Agent Manager - handles agent detection and registration
@@ -19,6 +20,7 @@ class AgentManager {
19
20
  this.registerAdapter(new droid_adapter_1.DroidAdapter());
20
21
  this.registerAdapter(new opencode_adapter_1.OpenCodeAdapter());
21
22
  this.registerAdapter(new amp_adapter_1.AmpAdapter());
23
+ this.registerAdapter(new crush_adapter_1.CrushAdapter());
22
24
  }
23
25
  /**
24
26
  * Register a new agent adapter
@@ -1 +1 @@
1
- {"version":3,"file":"agent-manager.js","sourceRoot":"","sources":["../../src/core/agent-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-manager.js","sourceRoot":"","sources":["../../src/core/agent-manager.ts"],"names":[],"mappings":"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"}
@@ -1,173 +1,12 @@
1
- # Clavix Agent Instructions
1
+ # Clavix Workflows
2
2
 
3
- This file provides universal Clavix workflows for AI assistants that don't support slash commands.
3
+ Quick workflow instructions for AI tools.
4
4
 
5
- ## 🔍 Workflow Detection
5
+ ## Fast Mode
6
+ Use for quick prompt improvements.
6
7
 
7
- Detect user intent from keywords and trigger appropriate workflow:
8
+ ## Deep Mode
9
+ Use for comprehensive analysis.
8
10
 
9
- ### PRD Generation Workflow
10
- **Trigger Keywords:** prd, product requirements, specification, strategic planning, requirements document
11
-
12
- **When to use:** User wants to create a Product Requirements Document through guided questions
13
-
14
- **Process:**
15
- 1. Explain that you'll guide them through 7 strategic questions to create a comprehensive PRD
16
- 2. Ask questions one at a time (wait for answer before proceeding):
17
- - **Q1**: What problem are you solving? Who experiences it?
18
- - **Q2**: Who will use this? Key characteristics and needs?
19
- - **Q3**: Must-have features (3-5 core features)?
20
- - **Q4**: How will you measure success? Key metrics?
21
- - **Q5**: Technical requirements, integrations, performance needs?
22
- - **Q6**: What's explicitly NOT in scope for this version?
23
- - **Q7**: Any deadlines or milestones?
24
-
25
- 3. After collecting all answers, generate TWO documents:
26
- - **Full PRD** (comprehensive with all sections: Problem Statement, Target Users, Requirements, Success Metrics, Out of Scope, Timeline)
27
- - **Quick PRD** (2-3 concise paragraphs optimized for AI consumption)
28
-
29
- 4. Save both to `.clavix/outputs/[project-name]/` if filesystem access available
30
- 5. Display file paths and suggest next steps
31
-
32
- **Important:** Be conversational, ask follow-up questions if answers are vague, help users think through edge cases.
33
-
34
- ---
35
-
36
- ### Fast Prompt Improvement Workflow
37
- **Trigger Keywords:** improve prompt, quick fix, make better, optimize prompt, fast improvement, CLEAR framework
38
-
39
- **When to use:** User wants quick improvements to their prompt
40
-
41
- **Process:**
42
- 1. Analyze the prompt using CLEAR Framework (C, L, E components):
43
- - **[C] Conciseness**: Identify verbosity, pleasantries, unnecessary words
44
- - **[L] Logic**: Check sequencing and coherent flow
45
- - **[E] Explicitness**: Verify persona, format, tone, success criteria
46
-
47
- 2. Assess if deep analysis is needed:
48
- - Prompt < 20 characters?
49
- - Missing 3+ critical elements?
50
- - Contains vague words ("app", "system") without context?
51
- - Low CLEAR scores (C<60%, L<60%, E<50%)?
52
-
53
- **If YES:** Recommend deep analysis instead and explain why
54
-
55
- 3. Generate CLEAR-optimized structured prompt with sections:
56
- - **Objective**: Clear, specific goal
57
- - **Requirements**: Detailed, actionable requirements
58
- - **Technical Constraints**: Technologies, performance, integrations
59
- - **Expected Output**: What result should look like
60
- - **Success Criteria**: How to measure completion
61
-
62
- 4. List **CLEAR Changes Made** with component labels:
63
- - [C] "Removed 15 unnecessary words"
64
- - [L] "Restructured: context → requirements → output"
65
- - [E] "Added explicit persona, format, tone"
66
-
67
- 5. Present optimized prompt in code block for easy copying
68
-
69
- ---
70
-
71
- ### Deep Prompt Analysis Workflow
72
- **Trigger Keywords:** deep analysis, comprehensive review, thorough examination, full CLEAR analysis, deep dive
73
-
74
- **When to use:** User wants comprehensive prompt analysis with all CLEAR components
75
-
76
- **Process:**
77
- 1. Apply **Full CLEAR Framework** (C, L, E, A, R):
78
- - **[C] Conciseness**: Detailed verbosity analysis
79
- - **[L] Logic**: Comprehensive flow analysis
80
- - **[E] Explicitness**: Complete specification check
81
- - **[A] Adaptive**: Generate 3-5 alternative phrasings and structures
82
- - **[R] Reflective**: Create validation checklist, identify edge cases
83
-
84
- 2. Provide **CLEAR Scoring** (0-100% for each component)
85
-
86
- 3. Generate multiple outputs:
87
- - **Primary optimized prompt** (all CLEAR components applied)
88
- - **Alternative variations** (3-5 different approaches with Adaptive component)
89
- - **Validation checklist** (Reflective component - edge cases, quality criteria)
90
-
91
- 4. Explain **CLEAR Changes Made** for each component with examples
92
-
93
- 5. Identify potential issues and mitigation strategies
94
-
95
- ---
96
-
97
- ### Conversational Mode Workflow
98
- **Trigger Keywords:** start conversational mode, let's discuss requirements, talk through this, iterative development
99
-
100
- **When to use:** User wants natural discussion about requirements before formalizing them
101
-
102
- **Process:**
103
- 1. Acknowledge entering conversational mode
104
- 2. Engage in natural discussion about requirements:
105
- - Ask clarifying questions as needed
106
- - Explore implications and alternatives
107
- - Track key points throughout conversation
108
- 3. Remind user they can say "summarize" when ready to extract structured prompt
109
- 4. Stay in this mode until user triggers summarization
110
-
111
- ---
112
-
113
- ### Summarization Workflow
114
- **Trigger Keywords:** summarize conversation, extract requirements, create prompt from discussion
115
-
116
- **When to use:** User wants to extract structured prompt from conversational discussion
117
-
118
- **Process:**
119
- 1. Analyze the entire conversation thread
120
- 2. Extract:
121
- - Core problem/objective
122
- - Key requirements and constraints
123
- - Technical specifications mentioned
124
- - Success criteria discussed
125
- - Important context and assumptions
126
-
127
- 3. Generate two outputs:
128
- - **Structured prompt** (2-3 well-formed paragraphs ready for AI)
129
- - **Mini-PRD** (if discussion was substantial - include Problem, Solution, Requirements, Success Metrics)
130
-
131
- 4. Present in markdown with clear sections
132
-
133
- ---
134
-
135
- ## 📝 Workflow Selection Guide
136
-
137
- **User mentions PRD, requirements doc, strategic planning:**
138
- → Use PRD Generation Workflow
139
-
140
- **User has a prompt and wants quick improvement:**
141
- → Use Fast Prompt Improvement (CLEAR C, L, E)
142
-
143
- **User wants thorough analysis or mentions alternatives/edge cases:**
144
- → Use Deep Analysis (Full CLEAR: C, L, E, A, R)
145
-
146
- **User wants to discuss/explore before committing:**
147
- → Use Conversational Mode
148
-
149
- **After conversation, user wants to formalize:**
150
- → Use Summarization Workflow
151
-
152
- ---
153
-
154
- ## 💡 Usage Tips
155
-
156
- - **Always save outputs** to `.clavix/outputs/` when possible
157
- - **Use markdown formatting** for all outputs
158
- - **Be conversational and supportive** - this is a collaborative process
159
- - **Ask follow-up questions** when requirements are vague or incomplete
160
- - **Apply CLEAR Framework** systematically in prompt improvement workflows
161
- - **Reference CLEAR components** ([C], [L], [E], [A], [R]) when explaining changes
162
-
163
- ---
164
-
165
- ## 🎯 Success Criteria
166
-
167
- Your goal is to help users:
168
- - Create clear, comprehensive PRDs through guided questioning
169
- - Improve prompts using CLEAR Framework principles
170
- - Think through requirements systematically
171
- - Produce outputs that lead to better AI interactions
172
-
173
- Always prioritize **clarity, completeness, and actionability** in all outputs.
11
+ ## PRD Mode
12
+ Use for strategic planning.
@@ -0,0 +1,164 @@
1
+ ---
2
+ name: "Clavix: Archive"
3
+ description: Archive completed PRD projects
4
+ ---
5
+
6
+ # Clavix Archive - PRD Project Archival
7
+
8
+ You are helping the user archive completed PRD projects to keep their workspace organized.
9
+
10
+ ## Instructions
11
+
12
+ 1. **Understanding Archive**:
13
+ - Archives move completed PRD projects from `.clavix/outputs/` to `.clavix/outputs/archive/`
14
+ - Archived projects are no longer shown in active project lists
15
+ - Projects can be restored from archive if needed
16
+ - Only projects with all tasks completed should typically be archived
17
+
18
+ 2. **Interactive Archive Mode**:
19
+ ```bash
20
+ clavix archive
21
+ ```
22
+
23
+ This will:
24
+ - List all PRD projects with 100% tasks completed
25
+ - Allow user to select which project to archive
26
+ - Confirm before archiving
27
+ - Move the project to archive directory
28
+
29
+ 3. **Archive Specific Project**:
30
+ ```bash
31
+ clavix archive [project-name]
32
+ ```
33
+
34
+ This will:
35
+ - Check task completion status
36
+ - Warn if tasks are incomplete
37
+ - Ask for confirmation
38
+ - Archive the specific project
39
+
40
+ 4. **Force Archive (Incomplete Tasks)**:
41
+ ```bash
42
+ clavix archive [project-name] --force
43
+ ```
44
+
45
+ Use this when:
46
+ - Project scope changed and some tasks are no longer relevant
47
+ - User wants to archive work-in-progress
48
+ - Tasks are incomplete but project is done
49
+
50
+ 5. **List Archived Projects**:
51
+ ```bash
52
+ clavix archive --list
53
+ ```
54
+
55
+ Shows all projects currently in archive with their task completion status
56
+
57
+ 6. **Restore from Archive**:
58
+ ```bash
59
+ clavix archive --restore [project-name]
60
+ ```
61
+
62
+ Moves a project back from archive to active outputs
63
+
64
+ ## When to Archive
65
+
66
+ ✅ **Good times to archive**:
67
+ - All implementation tasks are completed (`tasks.md` shows 100%)
68
+ - Project has been deployed/shipped to production
69
+ - Feature is complete and no more work planned
70
+ - User explicitly requests archival
71
+ - Old/abandoned projects that won't be continued
72
+
73
+ ❌ **Don't archive when**:
74
+ - Tasks are still in progress (unless using --force)
75
+ - Project is actively being worked on
76
+ - Future enhancements are planned in current tasks
77
+
78
+ ## Archive Behavior
79
+
80
+ **What gets archived:**
81
+ - The entire PRD project folder
82
+ - All files: PRD.md, PRD-quick.md, tasks.md, .clavix-implement-config.json
83
+ - Complete directory structure preserved
84
+
85
+ **Where it goes:**
86
+ - From: `.clavix/outputs/[project-name]/`
87
+ - To: `.clavix/outputs/archive/[project-name]/`
88
+
89
+ **What changes:**
90
+ - Archived projects won't show in `/clavix:plan` searches
91
+ - Archived projects won't show in `/clavix:implement` searches
92
+ - They're still accessible in archive directory
93
+ - Can be restored at any time
94
+
95
+ ## Example Workflows
96
+
97
+ ### Workflow 1: Complete Project
98
+ ```
99
+ User: "I've finished implementing the user authentication feature"
100
+ You: "Great! Let me help you archive it."
101
+
102
+ Run: clavix archive
103
+
104
+ User selects: user-authentication-system
105
+ System shows: All 15 tasks completed (100%)
106
+ User confirms: Yes, archive it
107
+
108
+ Result: Project moved to .clavix/outputs/archive/user-authentication-system/
109
+ ```
110
+
111
+ ### Workflow 2: Force Archive WIP
112
+ ```
113
+ User: "We're pivoting, I want to archive the old API design even though tasks aren't done"
114
+ You: "I'll archive it with --force"
115
+
116
+ Run: clavix archive old-api-design --force
117
+
118
+ System shows: 8 incomplete tasks
119
+ User confirms: Yes, archive anyway
120
+
121
+ Result: Project archived despite incomplete tasks
122
+ ```
123
+
124
+ ### Workflow 3: Restore Archived Project
125
+ ```
126
+ User: "Actually, we need to revisit that authentication feature"
127
+ You: "I'll restore it from the archive"
128
+
129
+ Run: clavix archive --restore user-authentication-system
130
+
131
+ Result: Project moved back to .clavix/outputs/user-authentication-system/
132
+ ```
133
+
134
+ ## AI Agent Guidelines
135
+
136
+ When user mentions archiving or cleaning up projects:
137
+
138
+ 1. **Check completion status first**:
139
+ - Run `clavix archive` to see archivable projects
140
+ - Review task completion percentages
141
+ - Suggest archiving only completed projects
142
+
143
+ 2. **Confirm before archiving**:
144
+ - Always confirm which project to archive
145
+ - Mention the archive location
146
+ - Explain that it can be restored
147
+
148
+ 3. **Use --force cautiously**:
149
+ - Only when user explicitly wants to archive incomplete work
150
+ - Explain which tasks will remain incomplete
151
+ - Confirm they won't lose data (just moving location)
152
+
153
+ 4. **Suggest restoration**:
154
+ - If user mentions old work, check archive
155
+ - Use `clavix archive --list` to show what's archived
156
+ - Offer to restore if needed
157
+
158
+ ## Tips
159
+
160
+ - Archive keeps your active projects list clean and focused
161
+ - Archived projects maintain all their data (nothing is deleted)
162
+ - Archive is searchable - you can still `grep` or find files in archive/
163
+ - Regular archiving improves `/clavix:plan` and `/clavix:implement` performance
164
+ - Use `--list` regularly to know what's been archived