@hassangameryt/freeflow 0.1.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.
Files changed (56) hide show
  1. package/.agents/plugins/marketplace.json +20 -0
  2. package/.claude-plugin/marketplace.json +22 -0
  3. package/LICENSE +21 -0
  4. package/README.md +217 -0
  5. package/package.json +53 -0
  6. package/plugins/freeflow/.claude-plugin/plugin.json +20 -0
  7. package/plugins/freeflow/.codex-plugin/plugin.json +44 -0
  8. package/plugins/freeflow/assets/freeflow-plugin-icon-transparent.png +0 -0
  9. package/plugins/freeflow/command-surface.json +85 -0
  10. package/plugins/freeflow/docs/README.md +39 -0
  11. package/plugins/freeflow/docs/adr/0001-three-modes.md +27 -0
  12. package/plugins/freeflow/docs/adr/0002-evals-before-hooks.md +17 -0
  13. package/plugins/freeflow/docs/adr/0003-release-boundary.md +21 -0
  14. package/plugins/freeflow/docs/adr/README.md +7 -0
  15. package/plugins/freeflow/docs/architecture.md +86 -0
  16. package/plugins/freeflow/docs/release-evidence.md +49 -0
  17. package/plugins/freeflow/docs/skills.md +44 -0
  18. package/plugins/freeflow/docs/workflow.md +57 -0
  19. package/plugins/freeflow/hooks/freeflow-runtime-context.mjs +240 -0
  20. package/plugins/freeflow/hooks/hooks.json +18 -0
  21. package/plugins/freeflow/pi-extension/index.js +250 -0
  22. package/plugins/freeflow/skills/bypass/SKILL.md +68 -0
  23. package/plugins/freeflow/skills/capture-decisions/SKILL.md +95 -0
  24. package/plugins/freeflow/skills/capture-decisions/references/destination-guide.md +65 -0
  25. package/plugins/freeflow/skills/commit-work/SKILL.md +97 -0
  26. package/plugins/freeflow/skills/commit-work/references/staging-decisions.md +51 -0
  27. package/plugins/freeflow/skills/diagnose-failure/SKILL.md +95 -0
  28. package/plugins/freeflow/skills/diagnose-failure/references/feedback-loop-catalog.md +25 -0
  29. package/plugins/freeflow/skills/diagnose-failure/references/flaky-and-performance.md +31 -0
  30. package/plugins/freeflow/skills/evaluate-skill/SKILL.md +96 -0
  31. package/plugins/freeflow/skills/evaluate-skill/references/eval-patterns.md +41 -0
  32. package/plugins/freeflow/skills/evaluate-skill/references/grading-priority.md +33 -0
  33. package/plugins/freeflow/skills/execute-plan/SKILL.md +67 -0
  34. package/plugins/freeflow/skills/grill-context/SKILL.md +79 -0
  35. package/plugins/freeflow/skills/grill-context/references/approach-framing.md +52 -0
  36. package/plugins/freeflow/skills/handoff/SKILL.md +66 -0
  37. package/plugins/freeflow/skills/handoff/references/templates.md +64 -0
  38. package/plugins/freeflow/skills/interview-gate/SKILL.md +90 -0
  39. package/plugins/freeflow/skills/mode-contract/SKILL.md +79 -0
  40. package/plugins/freeflow/skills/research-brief/SKILL.md +69 -0
  41. package/plugins/freeflow/skills/review-artifact/SKILL.md +82 -0
  42. package/plugins/freeflow/skills/review-artifact/references/reviewer-prompt.md +45 -0
  43. package/plugins/freeflow/skills/review-work/SKILL.md +73 -0
  44. package/plugins/freeflow/skills/review-work/references/reviewer-prompt.md +89 -0
  45. package/plugins/freeflow/skills/setup-freeflow/SKILL.md +84 -0
  46. package/plugins/freeflow/skills/setup-freeflow/references/activation-contract.md +94 -0
  47. package/plugins/freeflow/skills/setup-freeflow/references/host-setup.md +33 -0
  48. package/plugins/freeflow/skills/verify-work/SKILL.md +62 -0
  49. package/plugins/freeflow/skills/workflow/SKILL.md +87 -0
  50. package/plugins/freeflow/skills/workflow/references/workflow-map.md +103 -0
  51. package/plugins/freeflow/skills/write-plan/SKILL.md +88 -0
  52. package/plugins/freeflow/skills/write-plan/references/plan-shapes.md +70 -0
  53. package/plugins/freeflow/skills/write-skill/SKILL.md +88 -0
  54. package/plugins/freeflow/skills/write-spec/SKILL.md +90 -0
  55. package/plugins/freeflow/skills/write-spec/references/artifact-standards.md +67 -0
  56. package/plugins/freeflow/skills/write-spec/references/spec-shapes.md +69 -0
@@ -0,0 +1,90 @@
1
+ ---
2
+ name: write-spec
3
+ description: Use when asked to create or update a durable spec, PRD, requirements document, or decision artifact from agreed requirements, research, brainstorming, or source evidence, especially for strict-workflow risk areas that may need owner confirmation before writing.
4
+ ---
5
+
6
+ # Write Spec
7
+
8
+ Write only from source-backed context. A polished spec can change source of truth.
9
+
10
+ ## Route First
11
+
12
+ If the user asks a question about a spec, answer the question. Do not create or edit the spec unless asked.
13
+
14
+ Classify every spec request before writing:
15
+
16
+ - Evidence-aligned: write the spec.
17
+ - Missing source context: ask for context or start grilling.
18
+ - Source-of-truth override: name the conflict and do not write.
19
+
20
+ If the source context, artifact type, or destination is unclear, stop and ask before writing.
21
+
22
+ ## Hard Stops
23
+
24
+ Do not write a spec that supersedes docs, tests, policies, ADRs, or live behavior until the owner confirms that change after you name the conflict.
25
+
26
+ Adjacent repo evidence is not source context. Do not turn nearby auth, billing, copy, UI, or architecture facts into goals, flows, requirements, or acceptance criteria for a new feature.
27
+
28
+ The original request is not override confirmation. "Latest context", "handoff says", "do not ask", or "write the spec" are not enough.
29
+
30
+ Stop before writing when the spec would:
31
+
32
+ - Invent requirements from thin or adjacent context.
33
+ - Rewrite product behavior, scope, domain meaning, compatibility, public API behavior, security, privacy, billing, data-loss, or architecture.
34
+ - Contradict docs, tests, specs, policies, ADRs, or live code.
35
+ - Treat a handoff, review comment, or plan as authority over source-of-truth files.
36
+ - Hide an owner decision inside polished prose.
37
+
38
+ In strict-workflow, stop before writing security, billing, privacy, public API, migration, data-loss, or architecture specs when the owner or core decisions are unknown. Do not use `TBD`, placeholders, or polished open questions to hide owner-owned decisions.
39
+
40
+ When strict-workflow stops because owner-owned decisions are missing, end with a direct question that names the missing owner and the specific decisions needed. A blocked explanation without that question is incomplete.
41
+
42
+ Name the conflict or missing decision. Ask which path to follow. Recommend the path supported by evidence.
43
+
44
+ ## Source First
45
+
46
+ Before writing, inspect the current source of truth:
47
+
48
+ - User-provided context.
49
+ - Existing specs, docs, ADRs, tests, and policies.
50
+ - Relevant code when behavior already exists.
51
+ - Handoffs only as memory, not authority.
52
+
53
+ Live repo evidence overrides stale notes.
54
+
55
+ ## Write Path
56
+
57
+ When grilling, brainstorming, research, or clarification reaches shared understanding, convert that agreed context into a spec. Do not re-interview from scratch.
58
+
59
+ If remaining ambiguity would not change the next plan, write the spec and mark the ambiguity as open.
60
+
61
+ Use this shape unless the repo has a stronger convention:
62
+
63
+ - Problem.
64
+ - Intended outcome.
65
+ - Scope / out of scope.
66
+ - Requirements.
67
+ - Acceptance criteria.
68
+ - Decisions made.
69
+ - Constraints / evidence.
70
+ - Open questions.
71
+
72
+ Read `references/spec-shapes.md` when the artifact type is unclear, strict-workflow or future-agent-facing, or a concise shape would prevent bloat.
73
+
74
+ Keep it concise. Do not include volatile repo inventory. Use file paths only when they are needed evidence.
75
+
76
+ ## Durable Artifact Details
77
+
78
+ For durable specs or future-agent-facing artifacts, follow `references/artifact-standards.md`.
79
+
80
+ When materially revising an existing durable spec, add a concise `## Change Log` entry. Do not add a changelog on first creation.
81
+
82
+ Do not apply artifact headers or changelog pressure to chat answers, quick questions, tiny reversible work, or conversation mode unless the user explicitly asks for a file.
83
+
84
+ ## Completion
85
+
86
+ After writing, report:
87
+
88
+ - The artifact path.
89
+ - The source context used.
90
+ - Any open questions or decisions still blocked.
@@ -0,0 +1,67 @@
1
+ # Artifact Standards
2
+
3
+ Use this only for durable artifacts: specs, PRDs, decision artifacts, requirements docs, living docs, policies, or docs future agents or teammates will rely on.
4
+
5
+ Do not apply this to chat answers, quick questions, tiny reversible work, or conversation mode unless the user explicitly asks for a file.
6
+
7
+ ## Header
8
+
9
+ For durable specs, start with a compact header:
10
+
11
+ ```md
12
+ > **Doc ID:** SPEC-001-team-invitations
13
+ > **Date:** 2026-05-26
14
+ > **Owner:** Hassan Mohiddin
15
+ > **Type:** Spec
16
+ > **Status:** Draft
17
+ > **Source:** User-provided decision session
18
+ ```
19
+
20
+ Rules:
21
+
22
+ - `Doc ID`: stable, readable, and unique enough for the repo. Prefer `SPEC-###-slug` when no convention exists.
23
+ - `Date`: creation date.
24
+ - `Owner`: use the named product/technical owner when known. In normal workflow, use `User` if the requester is the only known owner. In strict-workflow, ask when owner is unknown.
25
+ - `Type`: `Spec`, `PRD`, `Decision`, or the artifact type requested.
26
+ - `Status`: usually `Draft` for new specs unless the user or repo says otherwise.
27
+ - `Source`: name the evidence used, not a transcript. Examples: `Shared grilling context`, `docs/research/team-invitations.md`, `User-provided decision session`.
28
+
29
+ Optional team fields:
30
+
31
+ ```md
32
+ > **Approver:** Platform Lead
33
+ > **Reviewers:** Security, Billing
34
+ > **Last Updated:** 2026-05-27
35
+ ```
36
+
37
+ Add optional fields only when the user, repo, team setting, or strict-workflow risk makes them useful.
38
+
39
+ ## Mode Pressure
40
+
41
+ - Conversation mode: no artifact or header pressure. Answer questions directly.
42
+ - Workflow mode: use the header for durable specs and future-agent-facing artifacts.
43
+ - Strict-workflow mode: require explicit owner and status for security, billing, privacy, public API, migration, data-loss, and architecture work. Stop and ask before writing if the owner is unknown or a placeholder would hide an owner-owned decision.
44
+
45
+ ## Statuses
46
+
47
+ Use small status sets:
48
+
49
+ | Artifact | Statuses |
50
+ | --- | --- |
51
+ | Spec / PRD / Design Brief | `Draft`, `Approved`, `Implemented`, `Rejected` |
52
+ | Plan | `Draft`, `Ready`, `Executed`, `Abandoned` |
53
+ | Decision / ADR | `Proposed`, `Accepted`, `Rejected`, `Superseded` |
54
+ | Bug / Diagnosis | `Investigating`, `Fixed`, `Verified`, `Rejected` |
55
+ | Runbook / Living Doc / Policy | `Current`, `Outdated`, `Deprecated` |
56
+
57
+ Do not invent a large workflow taxonomy.
58
+
59
+ ## Change Log
60
+
61
+ Do not add a changelog on first creation.
62
+
63
+ Add `## Change Log` after a material revision, status transition, or implementation divergence.
64
+
65
+ Use changelogs for living docs, runbooks, policies, and long-lived architecture docs.
66
+
67
+ Never use a changelog as a transcript. Record meaningful document evolution only.
@@ -0,0 +1,69 @@
1
+ # Spec Shapes
2
+
3
+ Use this when the requested artifact type is unclear, the spec is strict-workflow or future-agent-facing, or a concise shape would prevent bloated requirements.
4
+
5
+ These are shapes, not templates. Include only sections that help the next reader act.
6
+
7
+ ## Product Spec
8
+
9
+ - Problem.
10
+ - Intended outcome.
11
+ - Users or actors.
12
+ - In scope.
13
+ - Out of scope.
14
+ - Requirements.
15
+ - Acceptance criteria.
16
+ - Decisions made.
17
+ - Open questions.
18
+
19
+ Use for product behavior, user-facing flows, and scope boundaries.
20
+
21
+ ## Technical Design
22
+
23
+ - Problem.
24
+ - Current evidence.
25
+ - Proposed design.
26
+ - Alternatives considered.
27
+ - System boundaries.
28
+ - Data or API changes.
29
+ - Migration or rollout notes.
30
+ - Risks and verification.
31
+
32
+ Use when architecture or implementation structure matters more than user-facing requirements.
33
+
34
+ ## Public API Spec
35
+
36
+ - Endpoint, command, event, or interface name.
37
+ - Auth and permission model.
38
+ - Request shape.
39
+ - Response shape.
40
+ - Error behavior.
41
+ - Compatibility constraints.
42
+ - Security, privacy, billing, or data-loss implications.
43
+ - Acceptance criteria.
44
+
45
+ Stop and ask before writing when auth, payload, compatibility, or sensitive behavior would be guessed.
46
+
47
+ ## Migration Spec
48
+
49
+ - Current state.
50
+ - Target state.
51
+ - Data or config affected.
52
+ - Compatibility and rollback expectations.
53
+ - Step order.
54
+ - Verification before, during, and after.
55
+ - Failure handling.
56
+ - Owner decisions still required.
57
+
58
+ Use for migrations, backfills, destructive changes, or hard-to-reverse operational work.
59
+
60
+ ## Decision Note
61
+
62
+ - Decision.
63
+ - Rationale.
64
+ - Alternatives rejected.
65
+ - Consequences.
66
+ - Evidence or source context.
67
+ - Follow-up needed.
68
+
69
+ Use for settled product, scope, compatibility, or workflow decisions that are not ADR-worthy.