create-claude-cabinet 0.19.0 → 0.19.2
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/package.json
CHANGED
|
@@ -77,7 +77,11 @@ Implement the promoted rule at its target layer:
|
|
|
77
77
|
`.claude/rules/` file
|
|
78
78
|
- **Hook promotion:** Add to `.claude/settings.json` hooks section.
|
|
79
79
|
Command hooks for deterministic checks, prompt hooks for semantic
|
|
80
|
-
evaluation.
|
|
80
|
+
evaluation. **Tooling:** The `hookify` plugin (`claude plugins install
|
|
81
|
+
hookify`) can generate hooks from natural language — run `/hookify`
|
|
82
|
+
with a description or let it auto-generate rules from corrected
|
|
83
|
+
behaviors in the current session. Useful for rapid promotion without
|
|
84
|
+
hand-writing shell scripts.
|
|
81
85
|
- **Structural encoding:** Modify API, schema, or validation to reject
|
|
82
86
|
invalid states directly
|
|
83
87
|
|
|
@@ -188,6 +188,18 @@ export function completeAction(db, { fid }) {
|
|
|
188
188
|
return { fid, message: `Completed ${fid}` };
|
|
189
189
|
}
|
|
190
190
|
|
|
191
|
+
export function getAction(db, { fid }) {
|
|
192
|
+
if (!fid) return { error: 'fid is required' };
|
|
193
|
+
const row = db.prepare(`
|
|
194
|
+
SELECT a.*, p.name as project_name
|
|
195
|
+
FROM actions a
|
|
196
|
+
LEFT JOIN projects p ON a.project_fid = p.fid
|
|
197
|
+
WHERE a.fid = ? AND a.deleted_at IS NULL
|
|
198
|
+
`).get(fid);
|
|
199
|
+
if (!row) return { error: `No action found with fid: ${fid}` };
|
|
200
|
+
return row;
|
|
201
|
+
}
|
|
202
|
+
|
|
191
203
|
// ---------------------------------------------------------------------------
|
|
192
204
|
// Projects
|
|
193
205
|
// ---------------------------------------------------------------------------
|
|
@@ -108,6 +108,17 @@ const TOOLS = [
|
|
|
108
108
|
required: ['fid'],
|
|
109
109
|
},
|
|
110
110
|
},
|
|
111
|
+
{
|
|
112
|
+
name: 'pib_get_action',
|
|
113
|
+
description: 'Get full details of a single action by fid, including complete notes, all fields.',
|
|
114
|
+
inputSchema: {
|
|
115
|
+
type: 'object',
|
|
116
|
+
properties: {
|
|
117
|
+
fid: { type: 'string', description: 'Action fid (e.g. act:abc12345)' },
|
|
118
|
+
},
|
|
119
|
+
required: ['fid'],
|
|
120
|
+
},
|
|
121
|
+
},
|
|
111
122
|
{
|
|
112
123
|
name: 'pib_ingest_findings',
|
|
113
124
|
description: 'Ingest audit findings from a run directory containing run-summary.json.',
|
|
@@ -177,6 +188,8 @@ function handleToolCall(name, args) {
|
|
|
177
188
|
return lib.updateAction(d, args);
|
|
178
189
|
case 'pib_complete_action':
|
|
179
190
|
return lib.completeAction(d, args);
|
|
191
|
+
case 'pib_get_action':
|
|
192
|
+
return lib.getAction(d, args);
|
|
180
193
|
case 'pib_ingest_findings':
|
|
181
194
|
return lib.ingestFindings(d, args);
|
|
182
195
|
case 'pib_triage':
|