fact-toolkit 0.1.0__py3-none-any.whl
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.
- fact/__init__.py +3 -0
- fact/_data/commands/fact-audit.md +24 -0
- fact/_data/commands/fact-next.md +23 -0
- fact/_data/commands/fact-start.md +19 -0
- fact/_data/commands/fact-status.md +30 -0
- fact/_data/dashboard/static/dashboard.css +614 -0
- fact/_data/dashboard/static/dashboard.js +975 -0
- fact/_data/dashboard/templates/index.html +109 -0
- fact/_data/hooks/fact_audit.py +154 -0
- fact/_data/hooks/fact_audit_stop.py +104 -0
- fact/_data/hooks/fact_compact.py +157 -0
- fact/_data/hooks/fact_compact_progress.py +199 -0
- fact/_data/hooks/fact_hook.py +199 -0
- fact/_data/hooks/fact_session_resume.py +90 -0
- fact/_data/pricing.json +42 -0
- fact/_data/skills/fact-audit/SKILL.md +232 -0
- fact/_data/skills/fact-discovery/SKILL.md +77 -0
- fact/_data/skills/fact-implement/SKILL.md +105 -0
- fact/_data/skills/fact-onboarding/SKILL.md +87 -0
- fact/_data/skills/fact-research/SKILL.md +161 -0
- fact/_data/skills/fact-rpi-harness/SKILL.md +166 -0
- fact/_data/skills/fact-skill-installer/SKILL.md +87 -0
- fact/agents/__init__.py +59 -0
- fact/agents/claude_code.py +244 -0
- fact/cli.py +370 -0
- fact/dashboard/__init__.py +1 -0
- fact/dashboard/server.py +302 -0
- fact/dashboard/state.py +697 -0
- fact/dashboard/tree.py +61 -0
- fact/dashboard_proc.py +82 -0
- fact/data.py +51 -0
- fact/paths.py +112 -0
- fact/pricing.py +78 -0
- fact/spec_state.py +612 -0
- fact/speckit.py +161 -0
- fact_toolkit-0.1.0.dist-info/METADATA +681 -0
- fact_toolkit-0.1.0.dist-info/RECORD +39 -0
- fact_toolkit-0.1.0.dist-info/WHEEL +4 -0
- fact_toolkit-0.1.0.dist-info/entry_points.txt +2 -0
fact/__init__.py
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Run a security / architecture / quality audit on demand.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Load the `fact-audit` skill and run an audit.
|
|
6
|
+
|
|
7
|
+
The user may pass a dimension as argument:
|
|
8
|
+
- `/fact-audit security`
|
|
9
|
+
- `/fact-audit architecture`
|
|
10
|
+
- `/fact-audit quality`
|
|
11
|
+
- `/fact-audit` or `/fact-audit all` → run all three in parallel
|
|
12
|
+
|
|
13
|
+
Use sub-agents per fact-audit §3 (Sonnet for deep reviews, Haiku for
|
|
14
|
+
narrow per-task checks). Confirm any skill installation with the user
|
|
15
|
+
before downloading.
|
|
16
|
+
|
|
17
|
+
Write each audit report to `.specify/fact/audits/<UTC>-<dimension>.md`
|
|
18
|
+
with the YAML frontmatter described in fact-audit §4 so the dashboard
|
|
19
|
+
can render the severity badges.
|
|
20
|
+
|
|
21
|
+
After the run:
|
|
22
|
+
- If any critical finding → halt and present.
|
|
23
|
+
- Otherwise summarize counts in chat and tell the user where each
|
|
24
|
+
full report lives.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Continue the current FACT phase or advance to the next.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Load `fact-rpi-harness` if you haven't already in this session.
|
|
6
|
+
|
|
7
|
+
Identify the current phase from the state of files under `.specify/`:
|
|
8
|
+
|
|
9
|
+
- No `constitution.md` → phase **constitution** (`/speckit.constitution`).
|
|
10
|
+
- Constitution but no `spec.md` → phase **specify** (load `fact-discovery` or
|
|
11
|
+
`fact-research` depending on workflow type).
|
|
12
|
+
- Spec but no `plan.md` → phase **plan** (`/speckit.plan`).
|
|
13
|
+
- Plan but no `tasks.md` → phase **tasks** (`/speckit.tasks`).
|
|
14
|
+
- `tasks.md` with pending tasks → phase **implement** (load `fact-implement`).
|
|
15
|
+
- All tasks done → ask whether to start another feature, refactor, or wrap up.
|
|
16
|
+
|
|
17
|
+
Before starting:
|
|
18
|
+
1. Read `.specify/fact/session_state.json` to know which task was active.
|
|
19
|
+
2. Read the latest file in `.specify/fact/sessions/` (semantic summary).
|
|
20
|
+
3. If the active task was abandoned mid-flight, apply fact-onboarding §3b
|
|
21
|
+
("abandoned task" case).
|
|
22
|
+
|
|
23
|
+
Be brief. The user wants to make progress, not read a status report.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Start (or resume) a FACT workflow.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Load the `fact-rpi-harness` skill first (40% rule, sub-agents, intentional
|
|
6
|
+
compaction, session-summary format) — keep it active for the whole session.
|
|
7
|
+
|
|
8
|
+
Then load the `fact-onboarding` skill and follow its protocol:
|
|
9
|
+
|
|
10
|
+
1. If `.specify/fact/session_state.json` or files under
|
|
11
|
+
`.specify/fact/sessions/` exist, this is a **resumed session** — apply the
|
|
12
|
+
"resume protocol" (§3 of fact-onboarding). Do NOT greet with "hi, I'm
|
|
13
|
+
FACT"; jump straight into presenting continuity.
|
|
14
|
+
|
|
15
|
+
2. If no prior state exists, this is a **fresh project** — ask greenfield /
|
|
16
|
+
brownfield / demo and delegate to the matching skill.
|
|
17
|
+
|
|
18
|
+
If a workflow is already in progress (`.specify/specs/<feature>/` exists) and
|
|
19
|
+
the user invoked `/fact-start` anyway, suggest `/fact-next` as an alternative.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Print a quick status report — phase, tasks, last activity, next step.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Print a project status summary in chat. Be concise (10 lines max).
|
|
6
|
+
|
|
7
|
+
Read only headers / metadata, not full files:
|
|
8
|
+
|
|
9
|
+
- Project type (greenfield / brownfield / demo) — infer from
|
|
10
|
+
`.specify/specs/` structure or prior session summaries.
|
|
11
|
+
- Active feature (most recently modified subdir of `.specify/specs/`).
|
|
12
|
+
- Current phase (which files exist: constitution / spec / plan / tasks).
|
|
13
|
+
- Tasks: `<done>/<total>` parsed from `tasks.md`.
|
|
14
|
+
- Last activity: `updated_at` from `.specify/fact/session_state.json`, or the
|
|
15
|
+
most recent file in `.specify/fact/sessions/`.
|
|
16
|
+
- Next recommended step in one line.
|
|
17
|
+
|
|
18
|
+
Suggested format:
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
Project: <name> • <type>
|
|
22
|
+
Phase: <phase>
|
|
23
|
+
Feature: <slug>
|
|
24
|
+
Tasks: <done>/<total> ([x] T-007 last done)
|
|
25
|
+
Last act: <iso>
|
|
26
|
+
Next: <one line>
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Do not open large files. If something can't be determined, show `?` — never
|
|
30
|
+
fabricate (P10).
|