Compare commits
3 Commits
refactor/t
...
6bae80b874
| Author | SHA1 | Date | |
|---|---|---|---|
| 6bae80b874 | |||
| 43a147676e | |||
| 14d70689ce |
@@ -18,7 +18,8 @@
|
|||||||
"shadow-detection", "memory", "progress", "presence",
|
"shadow-detection", "memory", "progress", "presence",
|
||||||
"colette-bridge", "git-integration", "multi-project", "cost-tracking",
|
"colette-bridge", "git-integration", "multi-project", "cost-tracking",
|
||||||
"custom-archetypes", "workflow-design", "domains",
|
"custom-archetypes", "workflow-design", "domains",
|
||||||
"templates", "autonomous-mode", "using-archeflow"
|
"templates", "autonomous-mode", "using-archeflow",
|
||||||
|
"af-status", "af-score", "af-dag", "af-report"
|
||||||
],
|
],
|
||||||
"hooks": "hooks/hooks.json"
|
"hooks": "hooks/hooks.json"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ const path = require("path");
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
const pluginRoot = path.resolve(__dirname, "..");
|
const pluginRoot = path.resolve(__dirname, "..");
|
||||||
const skillFile = path.join(pluginRoot, "skills", "using-archeflow", "SKILL.md");
|
const skillFile = path.join(pluginRoot, "skills", "using-archeflow", "ACTIVATION.md");
|
||||||
|
|
||||||
if (!fs.existsSync(skillFile)) {
|
if (!fs.existsSync(skillFile)) {
|
||||||
console.log("{}");
|
console.log("{}");
|
||||||
|
|||||||
34
skills/af-dag/SKILL.md
Normal file
34
skills/af-dag/SKILL.md
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
---
|
||||||
|
name: af-dag
|
||||||
|
description: |
|
||||||
|
Show the DAG of the current or last ArcheFlow run.
|
||||||
|
<example>User: "/af-dag"</example>
|
||||||
|
<example>User: "/af-dag 2026-04-06-jwt-auth"</example>
|
||||||
|
---
|
||||||
|
|
||||||
|
# ArcheFlow Run DAG
|
||||||
|
|
||||||
|
1. Parse `run_id` from args. If none provided, read the latest run_id from `.archeflow/events/index.jsonl`.
|
||||||
|
2. Run `./lib/archeflow-dag.sh .archeflow/events/<run_id>.jsonl` if the script exists. Display its output.
|
||||||
|
3. If the script does not exist, read `.archeflow/events/<run_id>.jsonl` and render a text DAG:
|
||||||
|
- Each node is an event (phase transitions, agent starts/completes, findings).
|
||||||
|
- Show parent relationships via indentation.
|
||||||
|
- Mark completed events with `[done]`, active with `[running]`, failed with `[FAIL]`.
|
||||||
|
|
||||||
|
Example output:
|
||||||
|
```
|
||||||
|
run.start 2026-04-06-jwt-auth
|
||||||
|
plan.start
|
||||||
|
agent.complete explorer (42s)
|
||||||
|
agent.complete creator (68s)
|
||||||
|
do.start
|
||||||
|
agent.complete maker (180s)
|
||||||
|
check.start
|
||||||
|
agent.complete guardian (55s) -- 3 findings
|
||||||
|
agent.complete skeptic (40s) -- 1 finding
|
||||||
|
act.start
|
||||||
|
fixes.applied 3/4
|
||||||
|
run.complete (6m12s)
|
||||||
|
```
|
||||||
|
|
||||||
|
4. If no events found for the run_id, say: "No events found for run `<run_id>`."
|
||||||
40
skills/af-report/SKILL.md
Normal file
40
skills/af-report/SKILL.md
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
name: af-report
|
||||||
|
description: |
|
||||||
|
Generate a full process report for an ArcheFlow run.
|
||||||
|
<example>User: "/af-report"</example>
|
||||||
|
<example>User: "/af-report 2026-04-06-jwt-auth"</example>
|
||||||
|
---
|
||||||
|
|
||||||
|
# ArcheFlow Run Report
|
||||||
|
|
||||||
|
1. Parse `run_id` from args. If none provided, read the latest run_id from `.archeflow/events/index.jsonl`.
|
||||||
|
2. Run `./lib/archeflow-report.sh .archeflow/events/<run_id>.jsonl` if the script exists. Display its output.
|
||||||
|
3. If the script does not exist, read `.archeflow/events/<run_id>.jsonl` and produce a markdown report:
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
# ArcheFlow Report: <run_id>
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Task | ... |
|
||||||
|
| Workflow | fast/standard/thorough |
|
||||||
|
| Cycles | N |
|
||||||
|
| Duration | Xm Ys |
|
||||||
|
| Total Cost | $X.XX |
|
||||||
|
|
||||||
|
## Phase Summary
|
||||||
|
For each phase (Plan, Do, Check, Act): agents involved, duration, token cost, key outputs.
|
||||||
|
|
||||||
|
## Findings
|
||||||
|
Table of all findings: severity, category, description, archetype source, resolution (fixed/dismissed/deferred).
|
||||||
|
|
||||||
|
## Fixes Applied
|
||||||
|
List of fixes with before/after summary and which finding they addressed.
|
||||||
|
|
||||||
|
## Lessons Learned
|
||||||
|
Any new lessons extracted to memory during this run.
|
||||||
|
```
|
||||||
|
|
||||||
|
4. If no events found for the run_id, say: "No events found for run `<run_id>`."
|
||||||
23
skills/af-score/SKILL.md
Normal file
23
skills/af-score/SKILL.md
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
---
|
||||||
|
name: af-score
|
||||||
|
description: |
|
||||||
|
Show archetype effectiveness scores across runs.
|
||||||
|
<example>User: "/af-score"</example>
|
||||||
|
---
|
||||||
|
|
||||||
|
# ArcheFlow Effectiveness Scores
|
||||||
|
|
||||||
|
1. Run `./lib/archeflow-score.sh list` if the script exists. Display its output.
|
||||||
|
2. If the script does not exist, read `.archeflow/memory/effectiveness.jsonl` directly.
|
||||||
|
3. Summarize per archetype as a table:
|
||||||
|
|
||||||
|
| Archetype | Runs | Signal/Noise | Fix Rate | Avg Cost |
|
||||||
|
|-----------|------|--------------|----------|----------|
|
||||||
|
| Guardian | ... | ... | ... | ... |
|
||||||
|
| Skeptic | ... | ... | ... | ... |
|
||||||
|
|
||||||
|
- **Signal/Noise**: findings that led to actual fixes vs total findings raised.
|
||||||
|
- **Fix Rate**: percentage of findings that were applied (not dismissed).
|
||||||
|
- **Avg Cost**: mean token cost per review across runs.
|
||||||
|
|
||||||
|
4. If no effectiveness data exists, say: "No effectiveness data yet. Run `/af-run` at least once."
|
||||||
25
skills/af-status/SKILL.md
Normal file
25
skills/af-status/SKILL.md
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
name: af-status
|
||||||
|
description: |
|
||||||
|
Show ArcheFlow status — current/last run, active agents, findings.
|
||||||
|
<example>User: "/af-status"</example>
|
||||||
|
---
|
||||||
|
|
||||||
|
# ArcheFlow Status
|
||||||
|
|
||||||
|
1. Read `.archeflow/state.json` if it exists. Extract: task, phase, cycle, workflow, active agents, findings count, start time.
|
||||||
|
2. If `state.json` does not exist, read the latest entry from `.archeflow/events/index.jsonl`. Extract run_id, task, last event type, timestamp.
|
||||||
|
3. Calculate duration from start time to now (or to completion time if run finished).
|
||||||
|
4. Report as a compact table:
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| Run | `<run_id>` |
|
||||||
|
| Task | `<task description>` |
|
||||||
|
| Phase | `<current phase>` |
|
||||||
|
| Cycle | `<cycle number>` |
|
||||||
|
| Workflow | `<fast/standard/thorough>` |
|
||||||
|
| Findings | `<count>` |
|
||||||
|
| Duration | `<elapsed>` |
|
||||||
|
|
||||||
|
5. If no `state.json` and no `index.jsonl`, say: "No active or recent ArcheFlow runs."
|
||||||
22
skills/using-archeflow/ACTIVATION.md
Normal file
22
skills/using-archeflow/ACTIVATION.md
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
# ArcheFlow -- Active
|
||||||
|
|
||||||
|
Multi-agent orchestration using archetypal roles and PDCA quality cycles.
|
||||||
|
|
||||||
|
## Session Start
|
||||||
|
|
||||||
|
On activation, print ONE line then proceed silently:
|
||||||
|
```
|
||||||
|
archeflow v0.8.0 · 19 skills · <domain> domain
|
||||||
|
```
|
||||||
|
Domain: `writing` if `colette.yaml` exists, `research` if paper/thesis files, `code` otherwise.
|
||||||
|
|
||||||
|
## When to Use
|
||||||
|
|
||||||
|
| Need | Command |
|
||||||
|
|------|---------|
|
||||||
|
| Work the queue | `/af-sprint` |
|
||||||
|
| Deep orchestration | `/af-run <task>` |
|
||||||
|
| Code review | `/af-review` |
|
||||||
|
| Simple fix / question | Skip ArcheFlow — just do it directly |
|
||||||
|
|
||||||
|
Do NOT use ArcheFlow for: single-line fixes, questions, reading code, config tweaks, git ops.
|
||||||
@@ -7,7 +7,7 @@ description: Use at session start when implementing features, reviewing code, de
|
|||||||
|
|
||||||
On activation, print ONE line then proceed silently:
|
On activation, print ONE line then proceed silently:
|
||||||
```
|
```
|
||||||
archeflow v0.8.0 · 19 skills · <domain> domain
|
archeflow v0.8.0 · 23 skills · <domain> domain
|
||||||
```
|
```
|
||||||
Domain auto-detected: `writing` if `colette.yaml` exists, `research` if paper/thesis files, `code` otherwise.
|
Domain auto-detected: `writing` if `colette.yaml` exists, `research` if paper/thesis files, `code` otherwise.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user