@hassangameryt/freeflow 0.6.0 → 0.7.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.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +2 -2
- package/.codex-plugin/plugin.json +4 -5
- package/README.md +39 -55
- package/capabilities/cognitive-routing/SKILL.md +288 -130
- package/command-surface.json +0 -24
- package/hooks/freeflow-runtime-context.mjs +42 -477
- package/hooks/hooks.json +1 -26
- package/hooks/tests/check-runtime-context-hook.sh +108 -319
- package/package.json +4 -2
- package/pi-extension/dist/cognitive-routing/commands.js +3 -3
- package/pi-extension/dist/cognitive-routing/config.js +16 -20
- package/pi-extension/dist/cognitive-routing/controller.js +478 -48
- package/pi-extension/dist/cognitive-routing/history.js +12 -0
- package/pi-extension/dist/cognitive-routing/host.js +74 -12
- package/pi-extension/dist/cognitive-routing/pi-routing-session.js +414 -0
- package/pi-extension/dist/cognitive-routing/pi-session-control.js +320 -0
- package/pi-extension/dist/cognitive-routing/tool.js +1 -0
- package/pi-extension/dist/cognitive-routing/types.js +1 -1
- package/pi-extension/dist/index.js +236 -219
- package/pi-extension/dist/runtime/runtime-context.js +126 -286
- package/pi-extension/dist/settings/settings-ui.js +52 -336
- package/pi-extension/src/cognitive-routing/commands.ts +15 -5
- package/pi-extension/src/cognitive-routing/config.ts +16 -20
- package/pi-extension/src/cognitive-routing/controller.ts +561 -51
- package/pi-extension/src/cognitive-routing/history.ts +12 -0
- package/pi-extension/src/cognitive-routing/host.ts +110 -16
- package/pi-extension/src/cognitive-routing/pi-routing-session.ts +538 -0
- package/pi-extension/src/cognitive-routing/pi-session-control.ts +444 -0
- package/pi-extension/src/cognitive-routing/tool.ts +1 -0
- package/pi-extension/src/cognitive-routing/types.ts +1 -1
- package/pi-extension/src/index.ts +249 -239
- package/pi-extension/src/runtime/runtime-context.ts +129 -305
- package/pi-extension/src/settings/settings-ui.ts +53 -371
- package/pi-extension/tests/cognitive-routing/commands.test.js +1 -1
- package/pi-extension/tests/cognitive-routing/controller.test.js +69 -40
- package/pi-extension/tests/cognitive-routing/extension-lifecycle.test.js +128 -57
- package/pi-extension/tests/cognitive-routing/pi-normal-lifecycle.test.js +434 -0
- package/pi-extension/tests/cognitive-routing/pi-session-control.test.js +174 -0
- package/pi-extension/tests/cognitive-routing/pi-session-history.test.js +91 -0
- package/pi-extension/tests/cognitive-routing/profile-resolution.test.js +47 -4
- package/pi-extension/tests/integration/mode-free-core.test.js +218 -0
- package/pi-extension/tests/integration/pi-extension.test.js +430 -2478
- package/pi-extension/tests/integration/prompt-architecture.test.js +124 -79
- package/pi-extension/tests/integration/unaffected-regressions.test.js +411 -0
- package/runtime/prompts/cognitive-routing.md +5 -4
- package/runtime/prompts/conversation-history.md +1 -1
- package/runtime/prompts/core.md +77 -6
- package/runtime/prompts/interaction-contract.md +6 -2
- package/skills/action-selection/SKILL.md +93 -44
- package/skills/action-selection/references/trajectory-stalls.md +71 -0
- package/skills/bypass/SKILL.md +109 -39
- package/skills/commit-work/SKILL.md +94 -55
- package/skills/commit-work/references/git-state-edges.md +94 -0
- package/skills/commit-work/references/simple-push.md +92 -0
- package/skills/commit-work/references/staging-decisions.md +79 -46
- package/skills/decision-gate/SKILL.md +80 -22
- package/skills/design-for-depth/SKILL.md +208 -43
- package/skills/design-for-depth/references/design-pressure-signals.md +108 -240
- package/skills/design-for-depth/references/interface-design-loop.md +77 -97
- package/skills/design-for-depth/references/module-and-dependency-design.md +147 -0
- package/skills/design-for-depth/references/software-design-philosophy.md +127 -173
- package/skills/design-for-depth/references/state-and-failure-boundaries.md +136 -0
- package/skills/diagnose-failure/SKILL.md +198 -52
- package/skills/diagnose-failure/references/diagnostic-loop-catalog.md +19 -5
- package/skills/diagnose-failure/references/flaky-and-performance-diagnosis.md +13 -5
- package/skills/discuss/SKILL.md +118 -76
- package/skills/discuss/references/discussion-continuity.md +84 -32
- package/skills/evaluate-skill/SKILL.md +166 -52
- package/skills/evaluate-skill/references/evaluation-definition-schema.md +2 -2
- package/skills/evaluate-skill/references/evaluation-design.md +56 -30
- package/skills/evaluate-skill/references/execution-and-evidence.md +1 -1
- package/skills/evaluate-skill/references/review-and-revision.md +62 -21
- package/skills/execute-work/SKILL.md +98 -59
- package/skills/execute-work/references/code-practices.md +4 -4
- package/skills/execute-work/references/execute-work-edges.md +42 -22
- package/skills/review-artifact/SKILL.md +132 -71
- package/skills/review-artifact/references/adjudicate-artifact-review.md +101 -0
- package/skills/review-artifact/references/independent-artifact-reviewer-contract.md +52 -41
- package/skills/review-work/SKILL.md +115 -72
- package/skills/review-work/references/adjudicate-work-review.md +97 -0
- package/skills/review-work/references/independent-work-reviewer-contract.md +40 -35
- package/skills/review-work/references/security-risk-lens.md +17 -15
- package/skills/setup-freeflow/SKILL.md +14 -17
- package/skills/setup-freeflow/references/activation-contract.md +24 -30
- package/skills/setup-freeflow/references/host-setup.md +6 -7
- package/skills/simplify-code/SKILL.md +97 -39
- package/skills/simplify-code/references/simplification-patterns.md +1 -1
- package/skills/tdd/SKILL.md +108 -41
- package/skills/tdd/references/test-design.md +1 -1
- package/skills/track-work/SKILL.md +133 -300
- package/skills/track-work/references/working-record-format.md +515 -0
- package/skills/track-work/scripts/lib/document.mjs +713 -0
- package/skills/track-work/scripts/lib/format.mjs +166 -0
- package/skills/track-work/scripts/lib/store.mjs +233 -0
- package/skills/track-work/scripts/lib/transitions.mjs +790 -0
- package/skills/track-work/scripts/lib/views.mjs +27 -430
- package/skills/track-work/scripts/working-record.mjs +292 -98
- package/skills/verify-work/SKILL.md +46 -20
- package/skills/verify-work/references/browser-runtime-evidence.md +1 -1
- package/skills/verify-work/references/integration-evidence.md +1 -7
- package/skills/verify-work/references/performance-evidence.md +1 -1
- package/skills/workflow/SKILL.md +110 -80
- package/skills/workflow/references/domain-skill-composition.md +24 -18
- package/skills/write-skill/SKILL.md +218 -62
- package/skills/write-skill/references/activation-boundaries.md +63 -21
- package/skills/write-skill/references/agent-first-instructions.md +61 -27
- package/skills/write-skill/references/progressive-disclosure.md +91 -41
- package/skills/write-skill/references/skill-dependency-graphs.md +190 -0
- package/runtime/prompts/skills.md +0 -65
- package/skills/mode-contract/SKILL.md +0 -104
- package/skills/track-work/scripts/lib/codec.mjs +0 -570
- package/skills/track-work/scripts/lib/commands.mjs +0 -568
- package/skills/track-work/scripts/lib/contract.mjs +0 -303
- package/skills/track-work/scripts/lib/model.mjs +0 -506
- package/skills/track-work/scripts/lib/operations.mjs +0 -965
- package/skills/track-work/scripts/lib/record-store.mjs +0 -264
- package/skills/track-work/scripts/lib/result.mjs +0 -37
- package/skills/track-work/scripts/lib/rewrites.mjs +0 -740
- package/skills/track-work/scripts/lib/schema.mjs +0 -277
- package/skills/track-work/scripts/lib/source-inventory.mjs +0 -162
- package/skills/track-work/scripts/lib/workspace.mjs +0 -134
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "freeflow",
|
|
3
|
-
"description": "Freeflow gives coding agents an Interaction Contract,
|
|
4
|
-
"version": "0.
|
|
3
|
+
"description": "Freeflow gives coding agents an Interaction Contract, adaptive Workflow, focused methods, and durable task memory.",
|
|
4
|
+
"version": "0.7.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hassan Mohiddin"
|
|
7
7
|
},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "freeflow",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Feedback-based control system for coding agents.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hassan Mohiddin"
|
|
@@ -25,14 +25,13 @@
|
|
|
25
25
|
"interface": {
|
|
26
26
|
"displayName": "Freeflow",
|
|
27
27
|
"shortDescription": "Feedback-based control for coding agents.",
|
|
28
|
-
"longDescription": "Freeflow gives coding agents an Interaction Contract,
|
|
28
|
+
"longDescription": "Freeflow gives coding agents an Interaction Contract, adaptive Workflow, focused methods, and durable task memory.",
|
|
29
29
|
"developerName": "Hassan Mohiddin",
|
|
30
30
|
"category": "Coding",
|
|
31
31
|
"capabilities": ["Interactive", "Read", "Write"],
|
|
32
32
|
"defaultPrompt": [
|
|
33
|
-
"Use Freeflow
|
|
34
|
-
"
|
|
35
|
-
"Use strict-workflow for this risky change."
|
|
33
|
+
"Use Freeflow's adaptive Workflow for this task.",
|
|
34
|
+
"Respect the Interaction Contract and ask before going beyond the requested scope."
|
|
36
35
|
],
|
|
37
36
|
"websiteURL": "https://github.com/hassan-mohiddin/freeflow",
|
|
38
37
|
"privacyPolicyURL": "https://github.com/hassan-mohiddin/freeflow/blob/main/README.md",
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
**A feedback-based control system for coding agents.**
|
|
4
4
|
|
|
5
|
-
Freeflow helps coding agents do consequential work without turning every task into a rigid ceremony. It gives the agent a clear
|
|
5
|
+
Freeflow helps coding agents do consequential work without turning every task into a rigid ceremony. It gives the agent a clear Interaction Contract, adaptive Workflow, focused methods, durable task memory, and controlled delivery boundaries.
|
|
6
6
|
|
|
7
7
|
The host agent still owns tools, permissions, and execution. Freeflow helps it choose the right next action—and know when to stop, ask, verify, or hand work back.
|
|
8
8
|
|
|
@@ -15,7 +15,7 @@ Coding agents commonly fail at control boundaries:
|
|
|
15
15
|
| A question or tentative idea becomes an edit. | The Interaction Contract answers first and waits for clear action authority. |
|
|
16
16
|
| A prompt conflicts with tests, policy, or accepted behavior. | Decision Gate names the conflict before mutation. |
|
|
17
17
|
| New evidence invalidates the plan. | Workflow routes from evidence and preserves unaffected work. |
|
|
18
|
-
| Every task receives unnecessary ceremony. | Workflow enters at the narrowest useful owner. |
|
|
18
|
+
| Every task receives unnecessary ceremony. | Workflow enters at the narrowest useful owner and scales pressure to risk. |
|
|
19
19
|
| A passing command becomes an unsupported completion claim. | Verify Work matches evidence to the exact claim and boundary. |
|
|
20
20
|
| Compaction loses task state. | Track Work restores a Working Record and reconciles it with live state. |
|
|
21
21
|
| Tool output consumes future context. | Context Virtualization can archive consumed evidence while preserving session history. |
|
|
@@ -26,7 +26,7 @@ Coding agents commonly fail at control boundaries:
|
|
|
26
26
|
- [Host support](#host-support)
|
|
27
27
|
- [Capabilities](#capabilities)
|
|
28
28
|
- [Quick start](#quick-start)
|
|
29
|
-
- [
|
|
29
|
+
- [Workflow](#workflow)
|
|
30
30
|
- [System prompt architecture](#system-prompt-architecture)
|
|
31
31
|
- [Evidence and limits](#evidence-and-limits)
|
|
32
32
|
- [Commands](#commands)
|
|
@@ -41,21 +41,16 @@ Freeflow uses one active agent, one shared context, and nested feedback loops:
|
|
|
41
41
|
Interaction Lifecycle
|
|
42
42
|
└─ Workflow Feedback Loop
|
|
43
43
|
├─ establishes authority, owner, and slice
|
|
44
|
-
└─ Cognitive Execution
|
|
45
|
-
├─ Reasoning
|
|
46
|
-
├─
|
|
47
|
-
│
|
|
48
|
-
│
|
|
49
|
-
│
|
|
50
|
-
|
|
51
|
-
│ ├─ execute and observe
|
|
52
|
-
│ └─ repeat within the delegation contract
|
|
53
|
-
├─ RETURN evidence to Reasoning
|
|
54
|
-
├─ Reasoning self-reviews
|
|
55
|
-
└─ close, delegate correction, or return to Workflow
|
|
44
|
+
└─ Cognitive Execution Routes — automatic control only
|
|
45
|
+
├─ Reasoning chooses one route
|
|
46
|
+
│ ├─ YIELD → Standard leads ordinary work → YIELD HANDOFF → Reasoning
|
|
47
|
+
│ ├─ DELEGATE → open model-written boundary → Standard executes
|
|
48
|
+
│ │ └─ RETURN → Reasoning assesses; boundary remains open until CLOSE
|
|
49
|
+
│ └─ TASK ACT → Reasoning performs narrow direct OBSERVE or ACT_BOUNDED
|
|
50
|
+
└─ Action Selection guides uncertain environment interactions
|
|
56
51
|
```
|
|
57
52
|
|
|
58
|
-
Under
|
|
53
|
+
Under automatic Cognitive Routing control, each new user interaction begins in Reasoning. Under manual control, the selected compute profile runs the ordinary unsplit Workflow. Cognitive Routing changes compute placement only. It never changes authority, ownership, task scope, evidence requirements, or review independence.
|
|
59
54
|
|
|
60
55
|
The Workflow owner may be Discuss, Track Work, Execute Work, Verify Work, Review Work, Review Artifact, Diagnose Failure, or another focused method. These methods compose when their conditions apply; they are not a mandatory phase pipeline.
|
|
61
56
|
|
|
@@ -65,12 +60,12 @@ Freeflow is one package with different host boundaries:
|
|
|
65
60
|
|
|
66
61
|
| Host | Freeflow support | Cognitive Routing |
|
|
67
62
|
| --- | --- | --- |
|
|
68
|
-
| Codex | Shared skills and lifecycle hook | Not available; Pi
|
|
69
|
-
| Claude Code | Shared skills and lifecycle hook | Not available; Pi
|
|
70
|
-
| Pi | Shared skills, Pi extension,
|
|
71
|
-
| PiFlow | Freeflow package hosted by the separate PiFlow distribution | Available when
|
|
63
|
+
| Codex | Shared skills and lifecycle hook | Not available; Pi/PiFlow capabilities are not delivered |
|
|
64
|
+
| Claude Code | Shared skills and lifecycle hook | Not available; Pi/PiFlow capabilities are not delivered |
|
|
65
|
+
| Pi | Shared skills, Pi extension, optional context capabilities, and native host controls | Available when configured and the official model-state APIs are present |
|
|
66
|
+
| PiFlow | Freeflow package hosted by the separate PiFlow distribution | Available when configured |
|
|
72
67
|
|
|
73
|
-
Freeflow owns workflow policy, prompt fragments, skills, capabilities, and the Pi extension.
|
|
68
|
+
Freeflow owns workflow policy, prompt fragments, skills, capabilities, and the Pi extension. Each host owns its launch, package installation, session state, updates, and native model-state control; PiFlow remains a supported host integration.
|
|
74
69
|
|
|
75
70
|
## Capabilities
|
|
76
71
|
|
|
@@ -78,20 +73,20 @@ Freeflow owns workflow policy, prompt fragments, skills, capabilities, and the P
|
|
|
78
73
|
|
|
79
74
|
- **Workflow** coordinates authority, owner selection, evidence-driven re-entry, and Supported Exit.
|
|
80
75
|
- **Action Selection** bounds uncertain or broad Environment Interactions while preserving the current owner.
|
|
81
|
-
- **Track Work** maintains
|
|
76
|
+
- **Track Work** maintains a Working Record when decisions, evidence, blockers, or the next action must survive context loss.
|
|
82
77
|
- **Verify Work, Review Work, Review Artifact, and Diagnose Failure** separate factual support, judgment, artifact fitness, and unsupported causes.
|
|
83
78
|
|
|
84
79
|
### Optional host capabilities
|
|
85
80
|
|
|
86
|
-
- **[Cognitive Routing](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/capabilities/cognitive-routing.md)** places compute between Reasoning and Standard under automatic control
|
|
81
|
+
- **[Cognitive Routing](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/capabilities/cognitive-routing.md)** places compute between Reasoning and Standard under automatic control in Pi and PiFlow. It remains experimental.
|
|
87
82
|
- **[Context Virtualization](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/capabilities/context-virtualization.md)** classifies consumed tool evidence as Full, Retained, or Reference-only for future context while leaving canonical history unchanged.
|
|
88
83
|
- **[Conversation History](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/capabilities/conversation-history.md)** performs bounded retrieval of exact missing prior-conversation evidence from the current active branch.
|
|
89
84
|
|
|
90
|
-
|
|
85
|
+
The three capabilities are individually gated and default-off or unavailable unless their configuration and host conditions are effective. None grants authority or replaces Workflow.
|
|
91
86
|
|
|
92
87
|
## Quick start
|
|
93
88
|
|
|
94
|
-
For
|
|
89
|
+
For complete host-specific setup, see [Getting Started](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/getting-started.md).
|
|
95
90
|
|
|
96
91
|
### Codex
|
|
97
92
|
|
|
@@ -123,6 +118,8 @@ Or:
|
|
|
123
118
|
pi install git:github.com/hassan-mohiddin/freeflow
|
|
124
119
|
```
|
|
125
120
|
|
|
121
|
+
The full normal-Pi integration targets Pi 0.84.3 or newer; Pi 0.84.4 is the current Cognitive Routing test target.
|
|
122
|
+
|
|
126
123
|
### PiFlow
|
|
127
124
|
|
|
128
125
|
Install PiFlow separately, then install Freeflow into it:
|
|
@@ -144,19 +141,13 @@ In the target repository, run:
|
|
|
144
141
|
/setup-freeflow
|
|
145
142
|
```
|
|
146
143
|
|
|
147
|
-
Setup creates `.freeflow/config.json`, the required shared activation boundary. `.freeflow/local.json` is an optional personal override and cannot activate Freeflow by itself.
|
|
148
|
-
|
|
149
|
-
## Modes and workflow
|
|
144
|
+
Setup creates `.freeflow/config.json`, the required shared activation boundary. Minimal activation is `{}`. `.freeflow/local.json` is an optional personal override and cannot activate Freeflow by itself.
|
|
150
145
|
|
|
151
|
-
|
|
146
|
+
## Workflow
|
|
152
147
|
|
|
153
|
-
|
|
154
|
-
| --- | --- |
|
|
155
|
-
| `conversation` | Discussion, critique, explanation, and passive inspection |
|
|
156
|
-
| `workflow` | Active evidence generation and normal consequential work |
|
|
157
|
-
| `strict-workflow` | High-risk or hard-to-reverse work |
|
|
148
|
+
Freeflow always uses one adaptive Workflow. The Interaction Contract interprets the whole user turn; Workflow then chooses the narrowest owner and scales coordination to consequence, uncertainty, interaction, and reversibility.
|
|
158
149
|
|
|
159
|
-
|
|
150
|
+
A question or tentative idea remains discussion until clear action authority exists. A direct request covers only its bounded outcome and entailed effects. Risk-sensitive work receives stronger decisions, evidence, verification, and checkpoints through the same Workflow rather than through a separate selectable process.
|
|
160
151
|
|
|
161
152
|
Every bounded activity follows the same Feedback Loop:
|
|
162
153
|
|
|
@@ -171,13 +162,14 @@ orient to accepted intent, task memory, and live evidence
|
|
|
171
162
|
|
|
172
163
|
## System prompt architecture
|
|
173
164
|
|
|
174
|
-
Freeflow’s model-facing surface has
|
|
165
|
+
Freeflow’s model-facing surface has four coordinated parts:
|
|
175
166
|
|
|
176
|
-
1. **
|
|
177
|
-
2. **
|
|
178
|
-
3. **
|
|
167
|
+
1. **Core guidance** in `runtime/prompts/core.md` contains identity, shared terms, loops, Workflow, Action Selection, and Supported Exit cues.
|
|
168
|
+
2. **Interaction Contract** in `runtime/prompts/interaction-contract.md` remains a separate mandatory fragment so its behavior can be revised independently.
|
|
169
|
+
3. **Runtime State** reports current capability availability and Cognitive Routing `Control`/`Profile` at session start, after context reconstruction or loss, and when displayed state changes; unchanged state remains in the current provider context.
|
|
170
|
+
4. **Discoverable skills and tools** provide the 25 base methods and individually gated optional capability operations.
|
|
179
171
|
|
|
180
|
-
|
|
172
|
+
The core guidance and Interaction Contract are always delivered together when Freeflow is enabled. Optional capability content is omitted and reported unavailable rather than fabricated. One effective-state snapshot determines prompt assembly, discovery, tools, and projection.
|
|
181
173
|
|
|
182
174
|
Read the full [System Prompt Architecture](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/prompt-architecture.md) and [Workflow](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/workflow.md) docs for the complete contract.
|
|
183
175
|
|
|
@@ -228,32 +220,24 @@ Contributor calls:
|
|
|
228
220
|
/evaluate-skill
|
|
229
221
|
```
|
|
230
222
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
```text
|
|
234
|
-
/freeflow mode conversation
|
|
235
|
-
/freeflow mode workflow
|
|
236
|
-
/freeflow mode strict-workflow
|
|
237
|
-
/freeflow mode reset
|
|
238
|
-
```
|
|
239
|
-
|
|
240
|
-
Pi settings and PiFlow-only Cognitive Routing controls:
|
|
223
|
+
Pi and PiFlow Cognitive Routing controls:
|
|
241
224
|
|
|
242
225
|
```text
|
|
243
226
|
/freeflow
|
|
227
|
+
/freeflow settings
|
|
228
|
+
/freeflow settings session
|
|
229
|
+
/freeflow settings repo
|
|
244
230
|
/freeflow profile standard
|
|
245
231
|
/freeflow profile reasoning
|
|
246
232
|
/freeflow profile auto
|
|
247
233
|
```
|
|
248
234
|
|
|
249
|
-
|
|
235
|
+
`/freeflow settings` edits personal overrides, `/freeflow settings session` manages temporary enablement and optional-context overrides, and `/freeflow settings repo` edits shared repository settings. Profile changes require an idle host with the required model-state APIs.
|
|
250
236
|
|
|
251
|
-
In PiFlow, while the host is idle:
|
|
237
|
+
In Pi or PiFlow, while the host is idle:
|
|
252
238
|
|
|
253
239
|
- `Ctrl+Shift+R` cycles the manual standard/reasoning hold.
|
|
254
|
-
- `Ctrl+Shift+A`
|
|
255
|
-
|
|
256
|
-
Normal Pi does not register these Cognitive Routing shortcuts.
|
|
240
|
+
- `Ctrl+Shift+A` sets automatic control; from a manual hold, it releases the hold and moves to Reasoning when necessary. Repeating it while already automatic is idempotent.
|
|
257
241
|
|
|
258
242
|
## Documentation and development
|
|
259
243
|
|