tribunal-kit 2.4.0 → 2.4.3
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/.agent/scripts/patch_skills_meta.py +177 -177
- package/.agent/scripts/patch_skills_output.py +285 -285
- package/.agent/scripts/strengthen_skills.py +220 -220
- package/.agent/skills/github-operations/SKILL.md +354 -0
- package/.agent/skills/readme-builder/SKILL.md +270 -0
- package/.agent/workflows/strengthen-skills.md +99 -99
- package/bin/tribunal-kit.js +16 -11
- package/package.json +53 -38
|
@@ -1,99 +1,99 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Strengthen skills by appending Tribunal guardrails (LLM Traps, Pre-Flight checklist, VBC Protocol) to any SKILL.md missing them.
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# /strengthen-skills Workflow
|
|
6
|
-
|
|
7
|
-
Use this command to audit and harden all skills in `.agent/skills/` that are missing
|
|
8
|
-
the standard Tribunal guardrails block.
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
## What It Does
|
|
13
|
-
|
|
14
|
-
Runs `strengthen_skills.py` against all skill files.
|
|
15
|
-
For each skill it checks:
|
|
16
|
-
|
|
17
|
-
1. **Tribunal Integration section** — does it have `🏛️ Tribunal Integration`?
|
|
18
|
-
2. **VBC Protocol** — does it have `Verification-Before-Completion`?
|
|
19
|
-
|
|
20
|
-
Skills missing either are strengthened by appending the full canonical block:
|
|
21
|
-
- `## 🤖 LLM-Specific Traps`
|
|
22
|
-
- `## 🏛️ Tribunal Integration (Anti-Hallucination)`
|
|
23
|
-
- Forbidden AI Tropes
|
|
24
|
-
- Pre-Flight Self-Audit checklist
|
|
25
|
-
- VBC Protocol
|
|
26
|
-
|
|
27
|
-
Skills that already have both sections are skipped automatically.
|
|
28
|
-
|
|
29
|
-
---
|
|
30
|
-
|
|
31
|
-
## Steps
|
|
32
|
-
|
|
33
|
-
### Step 1 — Dry Run (Always First)
|
|
34
|
-
|
|
35
|
-
```powershell
|
|
36
|
-
python .agent/scripts/strengthen_skills.py . --dry-run
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
Review the output. All lines prefixed with `⚠️ [DRY RUN]` are skills that would be strengthened.
|
|
40
|
-
|
|
41
|
-
> **Human Gate:** If the dry-run output looks correct, continue to Step 2.
|
|
42
|
-
> If unexpected skills are listed, investigate before proceeding.
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
### Step 2 — Strengthen All Skills
|
|
47
|
-
|
|
48
|
-
```powershell
|
|
49
|
-
python .agent/scripts/strengthen_skills.py .
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
### Step 3 — Verify Summary
|
|
55
|
-
|
|
56
|
-
The script prints a final summary:
|
|
57
|
-
```
|
|
58
|
-
✅ Strengthened: N
|
|
59
|
-
⏭️ Skipped: N
|
|
60
|
-
❌ Errors: 0
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Errors must be zero before proceeding. If any errors appear, fix them and re-run.
|
|
64
|
-
|
|
65
|
-
---
|
|
66
|
-
|
|
67
|
-
### Step 4 — Strengthen a Single Skill (Optional)
|
|
68
|
-
|
|
69
|
-
To strengthen one specific skill only:
|
|
70
|
-
|
|
71
|
-
```powershell
|
|
72
|
-
python .agent/scripts/strengthen_skills.py . --skill <skill-name>
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
Example:
|
|
76
|
-
```powershell
|
|
77
|
-
python .agent/scripts/strengthen_skills.py . --skill brainstorming
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
### Step 5 — Custom Skills Directory (Optional)
|
|
83
|
-
|
|
84
|
-
If skills live in a non-standard location:
|
|
85
|
-
|
|
86
|
-
```powershell
|
|
87
|
-
python .agent/scripts/strengthen_skills.py . --skills-path /path/to/skills
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
---
|
|
91
|
-
|
|
92
|
-
## Related Commands
|
|
93
|
-
|
|
94
|
-
| Command | Purpose |
|
|
95
|
-
|---|---|
|
|
96
|
-
| `/audit` | Full project health audit (includes skills review) |
|
|
97
|
-
| `python .agent/scripts/patch_skills_meta.py .` | Inject version/freshness metadata into frontmatter |
|
|
98
|
-
| `python .agent/scripts/patch_skills_output.py .` | Add Output Format sections to skills missing them |
|
|
99
|
-
| `python .agent/scripts/config_validator.py .` | Validate all agent config consistency |
|
|
1
|
+
---
|
|
2
|
+
description: Strengthen skills by appending Tribunal guardrails (LLM Traps, Pre-Flight checklist, VBC Protocol) to any SKILL.md missing them.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /strengthen-skills Workflow
|
|
6
|
+
|
|
7
|
+
Use this command to audit and harden all skills in `.agent/skills/` that are missing
|
|
8
|
+
the standard Tribunal guardrails block.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## What It Does
|
|
13
|
+
|
|
14
|
+
Runs `strengthen_skills.py` against all skill files.
|
|
15
|
+
For each skill it checks:
|
|
16
|
+
|
|
17
|
+
1. **Tribunal Integration section** — does it have `🏛️ Tribunal Integration`?
|
|
18
|
+
2. **VBC Protocol** — does it have `Verification-Before-Completion`?
|
|
19
|
+
|
|
20
|
+
Skills missing either are strengthened by appending the full canonical block:
|
|
21
|
+
- `## 🤖 LLM-Specific Traps`
|
|
22
|
+
- `## 🏛️ Tribunal Integration (Anti-Hallucination)`
|
|
23
|
+
- Forbidden AI Tropes
|
|
24
|
+
- Pre-Flight Self-Audit checklist
|
|
25
|
+
- VBC Protocol
|
|
26
|
+
|
|
27
|
+
Skills that already have both sections are skipped automatically.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Steps
|
|
32
|
+
|
|
33
|
+
### Step 1 — Dry Run (Always First)
|
|
34
|
+
|
|
35
|
+
```powershell
|
|
36
|
+
python .agent/scripts/strengthen_skills.py . --dry-run
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Review the output. All lines prefixed with `⚠️ [DRY RUN]` are skills that would be strengthened.
|
|
40
|
+
|
|
41
|
+
> **Human Gate:** If the dry-run output looks correct, continue to Step 2.
|
|
42
|
+
> If unexpected skills are listed, investigate before proceeding.
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
### Step 2 — Strengthen All Skills
|
|
47
|
+
|
|
48
|
+
```powershell
|
|
49
|
+
python .agent/scripts/strengthen_skills.py .
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
### Step 3 — Verify Summary
|
|
55
|
+
|
|
56
|
+
The script prints a final summary:
|
|
57
|
+
```
|
|
58
|
+
✅ Strengthened: N
|
|
59
|
+
⏭️ Skipped: N
|
|
60
|
+
❌ Errors: 0
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Errors must be zero before proceeding. If any errors appear, fix them and re-run.
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
### Step 4 — Strengthen a Single Skill (Optional)
|
|
68
|
+
|
|
69
|
+
To strengthen one specific skill only:
|
|
70
|
+
|
|
71
|
+
```powershell
|
|
72
|
+
python .agent/scripts/strengthen_skills.py . --skill <skill-name>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Example:
|
|
76
|
+
```powershell
|
|
77
|
+
python .agent/scripts/strengthen_skills.py . --skill brainstorming
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### Step 5 — Custom Skills Directory (Optional)
|
|
83
|
+
|
|
84
|
+
If skills live in a non-standard location:
|
|
85
|
+
|
|
86
|
+
```powershell
|
|
87
|
+
python .agent/scripts/strengthen_skills.py . --skills-path /path/to/skills
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Related Commands
|
|
93
|
+
|
|
94
|
+
| Command | Purpose |
|
|
95
|
+
|---|---|
|
|
96
|
+
| `/audit` | Full project health audit (includes skills review) |
|
|
97
|
+
| `python .agent/scripts/patch_skills_meta.py .` | Inject version/freshness metadata into frontmatter |
|
|
98
|
+
| `python .agent/scripts/patch_skills_output.py .` | Add Output Format sections to skills missing them |
|
|
99
|
+
| `python .agent/scripts/config_validator.py .` | Validate all agent config consistency |
|
package/bin/tribunal-kit.js
CHANGED
|
@@ -191,7 +191,6 @@ async function autoUpdateCheck(originalArgs) {
|
|
|
191
191
|
|
|
192
192
|
if (!latestVersion) {
|
|
193
193
|
// Network fail — proceed silently with current version
|
|
194
|
-
dim('Could not check for updates (offline?). Using local version.');
|
|
195
194
|
return false;
|
|
196
195
|
}
|
|
197
196
|
|
|
@@ -269,13 +268,13 @@ function isSelfInstall(targetDir) {
|
|
|
269
268
|
// ── Banner ────────────────────────────────────────────────
|
|
270
269
|
function banner() {
|
|
271
270
|
if (quiet) return;
|
|
272
|
-
// Big ASCII art (TRIBUNAL-KIT)
|
|
273
|
-
const art = String.raw`
|
|
274
|
-
___________ ._____. .__ ____ __.__ __
|
|
275
|
-
\__ ___/______|__\_ |__ __ __ ____ _____ | | | |/ _|__|/ |_
|
|
276
|
-
| | \_ __ \ || __ \| | \/ \\__ \ | | ______ | < | \ __\
|
|
277
|
-
| | | | \/ || \_\ \ | / | \/ __ \| |__ /_____/ | | \| || |
|
|
278
|
-
|____| |__| |__||___ /____/|___| (____ /____/ |____|__ \__||__|
|
|
271
|
+
// Big ASCII art (TRIBUNAL-KIT)
|
|
272
|
+
const art = String.raw`
|
|
273
|
+
___________ ._____. .__ ____ __.__ __
|
|
274
|
+
\__ ___/______|__\_ |__ __ __ ____ _____ | | | |/ _|__|/ |_
|
|
275
|
+
| | \_ __ \ || __ \| | \/ \\__ \ | | ______ | < | \ __\
|
|
276
|
+
| | | | \/ || \_\ \ | / | \/ __ \| |__ /_____/ | | \| || |
|
|
277
|
+
|____| |__| |__||___ /____/|___| (____ /____/ |____|__ \__||__|
|
|
279
278
|
\/ \/ \/ \/ `.split('\n').filter(Boolean);
|
|
280
279
|
console.log();
|
|
281
280
|
for (const line of art) log(` ${c('cyan', bold(line))}`);
|
|
@@ -329,7 +328,8 @@ function cmdInit(flags) {
|
|
|
329
328
|
// Check if .agent already exists
|
|
330
329
|
if (fs.existsSync(agentDest) && !flags.force) {
|
|
331
330
|
warn('.agent/ already exists in this project.');
|
|
332
|
-
|
|
331
|
+
log(` ${c('gray', '▸')} To refresh or update it, run: ${colorize('white', 'tribunal-kit init --force')}`);
|
|
332
|
+
log(` ${c('gray', '▸')} Or check status with: ${colorize('cyan', 'tribunal-kit status')}`);
|
|
333
333
|
console.log();
|
|
334
334
|
process.exit(0);
|
|
335
335
|
}
|
|
@@ -356,8 +356,8 @@ function cmdInit(flags) {
|
|
|
356
356
|
ok(`${bold('DRY RUN')} complete — would install ${c('cyan', String(copied))} files`);
|
|
357
357
|
dim(`Target: ${agentDest}`);
|
|
358
358
|
} else {
|
|
359
|
-
// ── Success card — W=
|
|
360
|
-
const W =
|
|
359
|
+
// ── Success card — W=62, rows padded by plain-text length ──
|
|
360
|
+
const W = 62;
|
|
361
361
|
const agentsCount = fs.readdirSync(path.join(agentDest, 'agents')).length;
|
|
362
362
|
const workflowsCount = fs.readdirSync(path.join(agentDest, 'workflows')).length;
|
|
363
363
|
const skillsCount = fs.readdirSync(path.join(agentDest, 'skills')).length;
|
|
@@ -541,3 +541,8 @@ const { command, flags } = parseArgs(process.argv);
|
|
|
541
541
|
if (flags.quiet) quiet = true;
|
|
542
542
|
|
|
543
543
|
runWithUpdateCheck(command, flags);
|
|
544
|
+
|
|
545
|
+
// -- Exports (for testing) -- do not remove
|
|
546
|
+
if (require.main !== module) {
|
|
547
|
+
module.exports = { parseArgs, compareSemver, copyDir, countDir, isSelfInstall };
|
|
548
|
+
}
|
package/package.json
CHANGED
|
@@ -1,38 +1,53 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "tribunal-kit",
|
|
3
|
-
"version": "2.4.
|
|
4
|
-
"description": "Anti-Hallucination AI Agent Kit — 33 specialist agents, 25 slash commands, Swarm/Supervisor engine, and Tribunal review pipeline for Cursor, Windsurf, and Antigravity.",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"ai",
|
|
7
|
-
"agent",
|
|
8
|
-
"hallucination",
|
|
9
|
-
"cursor",
|
|
10
|
-
"windsurf",
|
|
11
|
-
"antigravity",
|
|
12
|
-
"tribunal",
|
|
13
|
-
"code-review",
|
|
14
|
-
"llm"
|
|
15
|
-
],
|
|
16
|
-
"homepage": "https://github.com/Harmitx7/tribunal-kit",
|
|
17
|
-
"repository": {
|
|
18
|
-
"type": "git",
|
|
19
|
-
"url": "git+https://github.com/Harmitx7/tribunal-kit.git"
|
|
20
|
-
},
|
|
21
|
-
"license": "MIT",
|
|
22
|
-
"bin": {
|
|
23
|
-
"tribunal-kit": "bin/tribunal-kit.js",
|
|
24
|
-
"tk": "bin/tribunal-kit.js"
|
|
25
|
-
},
|
|
26
|
-
"files": [
|
|
27
|
-
"bin/",
|
|
28
|
-
".agent/",
|
|
29
|
-
"README.md",
|
|
30
|
-
"LICENSE"
|
|
31
|
-
],
|
|
32
|
-
"engines": {
|
|
33
|
-
"node": ">=18.0.0"
|
|
34
|
-
},
|
|
35
|
-
"scripts": {
|
|
36
|
-
"test": "
|
|
37
|
-
|
|
38
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "tribunal-kit",
|
|
3
|
+
"version": "2.4.3",
|
|
4
|
+
"description": "Anti-Hallucination AI Agent Kit — 33 specialist agents, 25 slash commands, Swarm/Supervisor engine, and Tribunal review pipeline for Cursor, Windsurf, and Antigravity.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"ai",
|
|
7
|
+
"agent",
|
|
8
|
+
"hallucination",
|
|
9
|
+
"cursor",
|
|
10
|
+
"windsurf",
|
|
11
|
+
"antigravity",
|
|
12
|
+
"tribunal",
|
|
13
|
+
"code-review",
|
|
14
|
+
"llm"
|
|
15
|
+
],
|
|
16
|
+
"homepage": "https://github.com/Harmitx7/tribunal-kit",
|
|
17
|
+
"repository": {
|
|
18
|
+
"type": "git",
|
|
19
|
+
"url": "git+https://github.com/Harmitx7/tribunal-kit.git"
|
|
20
|
+
},
|
|
21
|
+
"license": "MIT",
|
|
22
|
+
"bin": {
|
|
23
|
+
"tribunal-kit": "bin/tribunal-kit.js",
|
|
24
|
+
"tk": "bin/tribunal-kit.js"
|
|
25
|
+
},
|
|
26
|
+
"files": [
|
|
27
|
+
"bin/",
|
|
28
|
+
".agent/",
|
|
29
|
+
"README.md",
|
|
30
|
+
"LICENSE"
|
|
31
|
+
],
|
|
32
|
+
"engines": {
|
|
33
|
+
"node": ">=18.0.0"
|
|
34
|
+
},
|
|
35
|
+
"scripts": {
|
|
36
|
+
"test": "jest --coverage",
|
|
37
|
+
"test:unit": "jest test/unit --coverage",
|
|
38
|
+
"test:integration": "jest test/integration --coverage"
|
|
39
|
+
},
|
|
40
|
+
"devDependencies": {
|
|
41
|
+
"jest": "^29.7.0"
|
|
42
|
+
},
|
|
43
|
+
"jest": {
|
|
44
|
+
"testMatch": [
|
|
45
|
+
"**/test/**/*.test.js"
|
|
46
|
+
],
|
|
47
|
+
"testEnvironment": "node",
|
|
48
|
+
"coverageDirectory": "coverage",
|
|
49
|
+
"collectCoverageFrom": [
|
|
50
|
+
"bin/**/*.js"
|
|
51
|
+
]
|
|
52
|
+
}
|
|
53
|
+
}
|