@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,20 @@
1
+ {
2
+ "name": "freeflow",
3
+ "interface": {
4
+ "displayName": "Freeflow"
5
+ },
6
+ "plugins": [
7
+ {
8
+ "name": "freeflow",
9
+ "source": {
10
+ "source": "local",
11
+ "path": "./plugins/freeflow"
12
+ },
13
+ "policy": {
14
+ "installation": "AVAILABLE",
15
+ "authentication": "ON_INSTALL"
16
+ },
17
+ "category": "Coding"
18
+ }
19
+ ]
20
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
3
+ "name": "freeflow",
4
+ "description": "Lightweight workflow for coding agents.",
5
+ "owner": {
6
+ "name": "Hassan Mohiddin",
7
+ "url": "https://github.com/hassan-mohiddin"
8
+ },
9
+ "plugins": [
10
+ {
11
+ "name": "freeflow",
12
+ "description": "Conversation, workflow, and strict-workflow skills for coding agents.",
13
+ "version": "0.1.0",
14
+ "category": "development",
15
+ "source": "./plugins/freeflow",
16
+ "author": {
17
+ "name": "Hassan Mohiddin"
18
+ },
19
+ "homepage": "https://github.com/hassan-mohiddin/freeflow"
20
+ }
21
+ ]
22
+ }
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Hassan Mohiddin
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,217 @@
1
+ # Freeflow
2
+
3
+ Lightweight workflow for coding agents.
4
+
5
+ Agent workflow tools tend to choose one side of the problem: sharp point skills, full lifecycle methodology, or enforcement-heavy runtimes. The missing layer is a small workflow spine that prevents silent product decisions, source-truth rewrites, fake verification, and messy handoffs without turning every change into a process operating system.
6
+
7
+ ## Workflow
8
+
9
+ Freeflow is a workflow layer, not a new agent. It helps the agent choose the right amount of process for the task.
10
+
11
+ ### Modes
12
+
13
+ - `conversation`: answer, explain, critique, or explore without workflow pressure.
14
+ - `workflow`: default for consequential work; use the workflow spine and scale detail to risk.
15
+ - `strict-workflow`: high-risk or hard-to-reverse work with stronger gates.
16
+
17
+ Use strict-workflow for security, privacy, billing, public APIs, migrations, data loss, compatibility, permissions, deployment, or irreversible architecture.
18
+
19
+ ### Map
20
+
21
+ ```mermaid
22
+ flowchart LR
23
+ Request{request}
24
+ Talk[conversation<br/>answer directly]
25
+ Discover[discover<br/>research / grill]
26
+ Spec[spec]
27
+ Plan[plan]
28
+ Build[build<br/>execute / diagnose]
29
+ Check[review + verify]
30
+ Close[commit / handoff]
31
+
32
+ Request -->|question| Talk
33
+ Request -->|work| Discover
34
+ Discover --> Spec --> Plan --> Build --> Check --> Close
35
+ Check -. new evidence or failed check .-> Discover
36
+ ```
37
+
38
+ The map is orienting, not mandatory. Small reversible work can skip unnecessary artifacts and gates.
39
+
40
+ ### Backward Edge
41
+
42
+ Loop back when new evidence changes the path:
43
+
44
+ ```mermaid
45
+ flowchart LR
46
+ Trigger{new evidence<br/>conflict<br/>failed check<br/>owner decision}
47
+ Decide{changes<br/>next action?}
48
+ Continue[continue]
49
+ Reenter[clarify / research<br/>revise spec or plan<br/>diagnose / split / stop]
50
+
51
+ Trigger --> Decide
52
+ Decide -->|no| Continue
53
+ Decide -->|yes| Reenter
54
+ Reenter -. resume .-> Decide
55
+ ```
56
+
57
+ The agent should not silently choose the backward destination when the choice changes product behavior, scope, compatibility, public APIs, security, privacy, billing, data loss, permissions, or irreversible architecture.
58
+
59
+ ### Bypass
60
+
61
+ Bypass skips ceremony, not judgment.
62
+
63
+ Use `bypass` only to skip an unnecessary gate. It does not skip user-owned decisions, source-truth conflicts, risky checks, or fresh verification before completion claims.
64
+
65
+ ## Install
66
+
67
+ ### Codex
68
+
69
+ Register the GitHub repo as a Codex marketplace, refresh it, then install Freeflow:
70
+
71
+ ```bash
72
+ codex plugin marketplace add https://github.com/hassan-mohiddin/freeflow.git
73
+ codex plugin marketplace upgrade freeflow
74
+ codex plugin add freeflow@freeflow
75
+ codex plugin list | rg freeflow
76
+ ```
77
+
78
+ In the Codex app, add the same GitHub marketplace URL from `/plugins`, then search for `freeflow`.
79
+
80
+ ### Claude Code
81
+
82
+ Register the marketplace:
83
+
84
+ ```bash
85
+ /plugin marketplace add hassan-mohiddin/freeflow
86
+ /plugin install freeflow
87
+ ```
88
+
89
+ Or install directly from GitHub:
90
+
91
+ ```bash
92
+ /plugin install hassan-mohiddin/freeflow
93
+ ```
94
+
95
+ ### Pi Coding Agent
96
+
97
+ Install Freeflow as a native Pi package from npm:
98
+
99
+ ```bash
100
+ pi install npm:@hassangameryt/freeflow
101
+ ```
102
+
103
+ Or install directly from GitHub:
104
+
105
+ ```bash
106
+ pi install git:github.com/hassan-mohiddin/freeflow
107
+ ```
108
+
109
+ For local development from this checkout:
110
+
111
+ ```bash
112
+ pi install .
113
+ ```
114
+
115
+ The Pi package exposes Freeflow skills and a small extension that registers direct Freeflow commands and loads workflow skill/map context before agent turns.
116
+
117
+ ### Required Step 1: Run Setup
118
+
119
+ **Run this in every repo after installing Freeflow:**
120
+
121
+ ```text
122
+ /setup-freeflow
123
+ ```
124
+
125
+ Setup creates the repo activation file and `.freeflow/config.json`. It does not create repo-local hooks, docs inventories, state files, handoffs, or `.codex/rules` behavior files.
126
+
127
+ After successful setup, the setup skill reads the workflow skill and workflow map before its final response so the current session can continue with Freeflow loaded.
128
+
129
+ ### Required Step 2: Enable Hooks
130
+
131
+ **In Codex, open the hooks screen and trust the Freeflow `SessionStart` hook:**
132
+
133
+ ```text
134
+ /hooks
135
+ ```
136
+
137
+ Press `t` to trust/enable the hook when Codex marks it as needing review.
138
+
139
+ Once enabled, the hook loads Freeflow workflow context at session start, resume, clear, and compact.
140
+
141
+ In Pi, Freeflow's package extension provides the context-loading hook through Pi lifecycle events. It refreshes workflow context on session start and compact, then injects it before agent turns. If you install it project-locally, trust the project when Pi prompts for project-local package resources.
142
+
143
+ These hooks do not run after every edit, block tools, grant permissions, or enforce workflow policy.
144
+
145
+ ### Other Agents
146
+
147
+ Copy the `plugins/freeflow/skills/` directory into the agent's skills/plugin system and make sure the agent can read `SKILL.md` files with bundled `references/`.
148
+
149
+ ## Usage
150
+
151
+ Use natural language first:
152
+
153
+ ```text
154
+ Use Freeflow workflow mode for this task.
155
+ Keep this in conversation mode.
156
+ Use strict-workflow for this billing change.
157
+ Verify before claiming completion.
158
+ Capture the durable decision.
159
+ ```
160
+
161
+ Slash-style prompts are model-routed in v0.1:
162
+
163
+ ```text
164
+ /workflow conversation
165
+ /workflow workflow
166
+ /workflow strict-workflow
167
+ /workflow reset
168
+ /write-spec
169
+ /write-plan
170
+ /execute-plan
171
+ /verify-work
172
+ /commit-work
173
+ /handoff
174
+ ```
175
+
176
+ For Codex and Claude, these commands work as skill-routing language. In Pi, the package extension registers native command handlers for Freeflow commands. Pi `/workflow` mode changes are session-scoped and update the footer; `.freeflow/config.json` remains the repo default only.
177
+
178
+ ## Docs
179
+
180
+ - [Docs index](plugins/freeflow/docs/README.md)
181
+ - [Workflow](plugins/freeflow/docs/workflow.md)
182
+ - [Skills](plugins/freeflow/docs/skills.md)
183
+ - [Architecture](plugins/freeflow/docs/architecture.md)
184
+ - [Release evidence](plugins/freeflow/docs/release-evidence.md)
185
+ - [ADRs](plugins/freeflow/docs/adr/README.md)
186
+
187
+ ## Evidence
188
+
189
+ Freeflow does not claim to beat Matt Pocock's skills or Obra's Superpowers. Those are references for skill sharpness and lifecycle discipline. Current evals compare baseline agent behavior against Freeflow instructions/skills, then verify command coverage.
190
+
191
+ | Report | Baseline | With Freeflow | What It Shows |
192
+ | --- | ---: | ---: | --- |
193
+ | v0.1 acceptance suite | - | 15/15 pass | Required release behaviors passed after measured fixes. |
194
+ | Always-on source-truth conflict | 2/10 | 10/10 | Freeflow stopped a pressured billing rewrite, made no edits, named the conflict, and asked for the policy decision. |
195
+ | Write spec from stale handoff | 4/10 | 10/10 | Freeflow refused to supersede billing policy from stale handoff text. |
196
+ | Write plan with hidden billing decision | 4/10 | 10/10 | Freeflow created no plan, named the policy conflict, and asked which path to follow. |
197
+ | Cold spec call without context | 2/10 | 10/10 | Freeflow did not invent onboarding behavior from adjacent files. |
198
+ | Workflow context lifecycle | fail | pass | Setup loads workflow context for the same session; session-start hooks load workflow context without `PostToolUse`. |
199
+ | Command surface audit | - | Pass | 3 mode commands, 13 direct skill calls, and 2 developer skill calls are covered while native slash handlers remain disabled. |
200
+
201
+ Eval sources and reports live with the plugin under `plugins/freeflow/evals/`; generated run output is ignored. Concise release evidence is summarized in [plugins/freeflow/docs/release-evidence.md](plugins/freeflow/docs/release-evidence.md).
202
+
203
+ ## What Freeflow Is Not
204
+
205
+ - Not a new agent.
206
+ - Not a CLI framework.
207
+ - Not an enforcement hook system.
208
+ - Not old Orchestra with a smaller README.
209
+ - Not a replacement for Matt's skills or Superpowers.
210
+
211
+ The shipped hooks are context-loading only. They do not enforce policy, block tools, or replace repo instructions.
212
+
213
+ Freeflow is the lightweight workflow layer between point skills and full process systems.
214
+
215
+ ## License
216
+
217
+ MIT License. Copyright (c) 2026 Hassan Mohiddin.
package/package.json ADDED
@@ -0,0 +1,53 @@
1
+ {
2
+ "name": "@hassangameryt/freeflow",
3
+ "version": "0.1.0",
4
+ "description": "Lightweight workflow for coding agents.",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "author": {
9
+ "name": "Hassan Mohiddin"
10
+ },
11
+ "homepage": "https://github.com/hassan-mohiddin/freeflow",
12
+ "repository": {
13
+ "type": "git",
14
+ "url": "git+https://github.com/hassan-mohiddin/freeflow.git"
15
+ },
16
+ "license": "MIT",
17
+ "type": "module",
18
+ "keywords": [
19
+ "pi-package",
20
+ "agent-skills",
21
+ "workflow",
22
+ "skills",
23
+ "agents",
24
+ "planning",
25
+ "verification",
26
+ "codex",
27
+ "claude",
28
+ "pi"
29
+ ],
30
+ "pi": {
31
+ "skills": [
32
+ "plugins/freeflow/skills"
33
+ ],
34
+ "extensions": [
35
+ "plugins/freeflow/pi-extension/index.js"
36
+ ],
37
+ "image": "https://raw.githubusercontent.com/hassan-mohiddin/freeflow/main/plugins/freeflow/assets/freeflow-plugin-icon-transparent.png"
38
+ },
39
+ "files": [
40
+ ".agents/**",
41
+ ".claude-plugin/**",
42
+ "LICENSE",
43
+ "README.md",
44
+ "plugins/freeflow/.claude-plugin/**",
45
+ "plugins/freeflow/.codex-plugin/**",
46
+ "plugins/freeflow/assets/**",
47
+ "plugins/freeflow/command-surface.json",
48
+ "plugins/freeflow/docs/**",
49
+ "plugins/freeflow/hooks/**",
50
+ "plugins/freeflow/pi-extension/**",
51
+ "plugins/freeflow/skills/**"
52
+ ]
53
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "freeflow",
3
+ "description": "Lightweight workflow for coding agents. Conversation, workflow, and strict-workflow skills for planning, execution, review, verification, handoff, and decision capture.",
4
+ "version": "0.1.0",
5
+ "author": {
6
+ "name": "Hassan Mohiddin"
7
+ },
8
+ "homepage": "https://github.com/hassan-mohiddin/freeflow",
9
+ "repository": "https://github.com/hassan-mohiddin/freeflow",
10
+ "license": "MIT",
11
+ "keywords": [
12
+ "workflow",
13
+ "skills",
14
+ "agents",
15
+ "planning",
16
+ "verification",
17
+ "claude-code",
18
+ "codex"
19
+ ]
20
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "freeflow",
3
+ "version": "0.1.0",
4
+ "description": "Lightweight workflow for coding agents.",
5
+ "author": {
6
+ "name": "Hassan Mohiddin"
7
+ },
8
+ "homepage": "https://github.com/hassan-mohiddin/freeflow",
9
+ "repository": "https://github.com/hassan-mohiddin/freeflow",
10
+ "license": "MIT",
11
+ "keywords": [
12
+ "workflow",
13
+ "skills",
14
+ "agents",
15
+ "planning",
16
+ "verification",
17
+ "codex",
18
+ "claude"
19
+ ],
20
+ "skills": "./skills/",
21
+ "interface": {
22
+ "displayName": "Freeflow",
23
+ "shortDescription": "Lightweight workflow for coding agents.",
24
+ "longDescription": "Freeflow guides coding agents through conversation, workflow, and strict-workflow modes with interview gates, source-truth checks, planning, execution, review, verification, commit discipline, handoffs, and durable decision capture.",
25
+ "developerName": "Hassan Mohiddin",
26
+ "category": "Coding",
27
+ "capabilities": [
28
+ "Interactive",
29
+ "Read",
30
+ "Write"
31
+ ],
32
+ "defaultPrompt": [
33
+ "Use Freeflow workflow mode for this task.",
34
+ "Keep this in conversation mode.",
35
+ "Use strict-workflow for this risky change."
36
+ ],
37
+ "websiteURL": "https://github.com/hassan-mohiddin/freeflow",
38
+ "privacyPolicyURL": "https://github.com/hassan-mohiddin/freeflow/blob/main/README.md",
39
+ "termsOfServiceURL": "https://github.com/hassan-mohiddin/freeflow/blob/main/LICENSE",
40
+ "brandColor": "#2563EB",
41
+ "composerIcon": "./assets/freeflow-plugin-icon-transparent.png",
42
+ "logo": "./assets/freeflow-plugin-icon-transparent.png"
43
+ }
44
+ }
@@ -0,0 +1,85 @@
1
+ {
2
+ "nativeSlashHandlers": false,
3
+ "modeCommands": [
4
+ {
5
+ "command": "/workflow conversation",
6
+ "routesTo": "mode-contract"
7
+ },
8
+ {
9
+ "command": "/workflow workflow",
10
+ "routesTo": "mode-contract"
11
+ },
12
+ {
13
+ "command": "/workflow strict-workflow",
14
+ "routesTo": "mode-contract"
15
+ },
16
+ {
17
+ "command": "/workflow reset",
18
+ "routesTo": "mode-contract"
19
+ }
20
+ ],
21
+ "directSkillCalls": [
22
+ {
23
+ "command": "/grill-context",
24
+ "skill": "grill-context"
25
+ },
26
+ {
27
+ "command": "/research-brief",
28
+ "skill": "research-brief"
29
+ },
30
+ {
31
+ "command": "/write-spec",
32
+ "skill": "write-spec"
33
+ },
34
+ {
35
+ "command": "/review-artifact",
36
+ "skill": "review-artifact"
37
+ },
38
+ {
39
+ "command": "/write-plan",
40
+ "skill": "write-plan"
41
+ },
42
+ {
43
+ "command": "/execute-plan",
44
+ "skill": "execute-plan"
45
+ },
46
+ {
47
+ "command": "/diagnose-failure",
48
+ "skill": "diagnose-failure"
49
+ },
50
+ {
51
+ "command": "/verify-work",
52
+ "skill": "verify-work"
53
+ },
54
+ {
55
+ "command": "/review-work",
56
+ "skill": "review-work"
57
+ },
58
+ {
59
+ "command": "/commit-work",
60
+ "skill": "commit-work"
61
+ },
62
+ {
63
+ "command": "/capture-decisions",
64
+ "skill": "capture-decisions"
65
+ },
66
+ {
67
+ "command": "/handoff",
68
+ "skill": "handoff"
69
+ },
70
+ {
71
+ "command": "/bypass",
72
+ "skill": "bypass"
73
+ }
74
+ ],
75
+ "developerSkillCalls": [
76
+ {
77
+ "command": "/write-skill",
78
+ "skill": "write-skill"
79
+ },
80
+ {
81
+ "command": "/evaluate-skill",
82
+ "skill": "evaluate-skill"
83
+ }
84
+ ]
85
+ }
@@ -0,0 +1,39 @@
1
+ # Freeflow Docs
2
+
3
+ These docs describe the public plugin behavior. Historical research stays in root `docs/`; eval sources and reports live under `plugins/freeflow/evals/`.
4
+
5
+ After installing Freeflow, run setup in each repo where you want it active:
6
+
7
+ ```text
8
+ /setup-freeflow
9
+ ```
10
+
11
+ Setup creates activation/config files only.
12
+
13
+ In Codex, open the hooks screen after install:
14
+
15
+ ```text
16
+ /hooks
17
+ ```
18
+
19
+ Press `t` to trust/enable the Freeflow `SessionStart` hook when Codex marks it as needing review. Once enabled, plugin-bundled hooks load workflow and interview-gate context at session start, resume, clear, and compact.
20
+
21
+ In Pi, install Freeflow as a Pi package from npm:
22
+
23
+ ```bash
24
+ pi install npm:@hassangameryt/freeflow
25
+ ```
26
+
27
+ Or install directly from GitHub:
28
+
29
+ ```bash
30
+ pi install git:github.com/hassan-mohiddin/freeflow
31
+ ```
32
+
33
+ The package exposes `plugins/freeflow/skills/` and `plugins/freeflow/pi-extension/index.js`. The Pi extension registers direct Freeflow commands, keeps `/workflow` mode changes scoped to the Pi session, refreshes workflow and interview-gate context on session start and compact, and injects that context before agent turns. It does not enforce policy, block tools, grant permissions, or create repo-local hooks.
34
+
35
+ - [Workflow](workflow.md): modes, entry points, loops, and the compact workflow map.
36
+ - [Skills](skills.md): shipped skills and what each one is for.
37
+ - [Architecture](architecture.md): package layout, runtime boundary, context hooks, and progressive disclosure model.
38
+ - [Release evidence](release-evidence.md): v0.1 acceptance evidence and deferred checks.
39
+ - [ADRs](adr/README.md): durable release decisions.
@@ -0,0 +1,27 @@
1
+ # ADR 0001: Three Modes
2
+
3
+ ## Status
4
+
5
+ Accepted.
6
+
7
+ ## Decision
8
+
9
+ Freeflow has exactly three modes:
10
+
11
+ - `conversation`
12
+ - `workflow`
13
+ - `strict-workflow`
14
+
15
+ ## Rationale
16
+
17
+ Three modes give users explicit process control without creating a mode for every task shape.
18
+
19
+ `conversation` removes workflow pressure for questions and discussion.
20
+
21
+ `workflow` is the default for consequential work.
22
+
23
+ `strict-workflow` exists for high-risk or hard-to-reverse work.
24
+
25
+ ## Consequences
26
+
27
+ Freeflow must scale process inside these modes instead of adding new modes. Host permission modes remain separate from Freeflow workflow modes.
@@ -0,0 +1,17 @@
1
+ # ADR 0002: Evals Before Enforcement Hooks
2
+
3
+ ## Status
4
+
5
+ Accepted.
6
+
7
+ ## Decision
8
+
9
+ Freeflow v0.1 ships plugin-bundled context-loading runtime: Codex/Claude hooks and a Pi extension that load existing workflow and interview-gate context. It still ships without enforcement hooks or CLI enforcement. Behavior must first be proven with baseline-vs-with-skill evals before mechanical enforcement is added.
10
+
11
+ ## Rationale
12
+
13
+ Context-loading runtime addresses a measured lifecycle gap: workflow and interview-gate context may not be present at session start. The setup skill handles the same-session setup case by reading runtime context after successful verification. Enforcement hooks can prevent expensive mistakes, but early enforcement machinery can hide weak skill wording and turn the package into brittle workflow infrastructure.
14
+
15
+ ## Consequences
16
+
17
+ Native enforcement remains future work. Enforcement hooks should be added only when a repeated failure is concrete, deterministic, and not solved by concise skill wording.
@@ -0,0 +1,21 @@
1
+ # ADR 0003: Release Boundary
2
+
3
+ ## Status
4
+
5
+ Accepted.
6
+
7
+ ## Decision
8
+
9
+ Freeflow v0.1 ships as a marketplace repo with one plugin runtime under `plugins/freeflow/`.
10
+
11
+ The plugin runtime includes skills, bundled references, context-loading runtime, public docs, eval sources/reports, command-surface metadata, Codex/Claude metadata, and Pi package metadata/extension.
12
+
13
+ The runtime excludes generated eval run output, historical research notes, handoffs, enforcement hooks, CLI tools, and old Orchestra compatibility.
14
+
15
+ ## Rationale
16
+
17
+ The public repo should be installable without generated artifacts or duplicate package copies. Eval definitions and concise reports stay near the skills they protect; generated run output stays ignored.
18
+
19
+ ## Consequences
20
+
21
+ Release evidence is summarized in `release-evidence.md`. Generated eval run output remains ignored unless a future release intentionally publishes it.
@@ -0,0 +1,7 @@
1
+ # Freeflow ADRs
2
+
3
+ Durable decisions for the public Freeflow package:
4
+
5
+ - [ADR 0001: Three Workflow Modes](0001-three-modes.md)
6
+ - [ADR 0002: Evals Before Enforcement Hooks](0002-evals-before-hooks.md)
7
+ - [ADR 0003: v0.1 Release Boundary](0003-release-boundary.md)