@akanjs/cli 3.0.0-alpha.102 → 3.0.0-alpha.103
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/.build-stamp
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
708d95c2692df8b7a0bdb905802d48d38352e0305215030af6c3d6aa468a9460
|
|
@@ -131,6 +131,11 @@ apps and libs never import it directly (`no-import-external-library`) — everyt
|
|
|
131
131
|
`data-agent-zone` container; guides follow the layout cascade (ancestors and own, never a sibling's). Zone
|
|
132
132
|
membership is positional — there is no per-declaration zone key, so a lib component joins whatever zone the app
|
|
133
133
|
mounts it in.
|
|
134
|
+
- **Two agents' turns run in parallel; their tool calls take turns.** Tool execution is serialized across the
|
|
135
|
+
whole page, because `AgentAbort` and `AgentProgress` reach the running call through a module slot rather than a
|
|
136
|
+
parameter — two calls in flight restore each other's slot and the second one's progress goes nowhere. Only the
|
|
137
|
+
execution queues: a zone parked on an approval card holds nothing up, since waiting for the user sits outside
|
|
138
|
+
the queue, and a call that is aborted releases it.
|
|
134
139
|
- **Everything a zone publishes is named `<id>.<name>`,** and that name is what instructions must use. A bare
|
|
135
140
|
`createVideoProject` inside a zone naming its tool `videoProjectDraft.createVideoProject` is a tool that does
|
|
136
141
|
not exist: the model calls it, the surface answers `Unknown tool`, and a turn is gone. Build the name from the
|
|
@@ -438,16 +443,17 @@ apps and libs never import it directly (`no-import-external-library`) — everyt
|
|
|
438
443
|
row, Tab completing its name, and Escape closing the menu and then, pressed again, the panel.
|
|
439
444
|
|
|
440
445
|
## Built-In Tools
|
|
441
|
-
- The framework publishes five built-ins on every store surface: `navigate` (internal paths only, the same
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
is worth waiting for — publish an `st.tool` beside the
|
|
446
|
+
- The framework publishes five built-ins on every store surface: `navigate` (internal paths only, the same router
|
|
447
|
+
`Link` rides), `goBack` (this session's history — global, because history is not a control a page owns and a page
|
|
448
|
+
that draws no back link is not one you may not leave — a screen that must not be left withholds them with `builtins`,
|
|
449
|
+
not with prose), `readScreen` (the rendered DOM as compact text — headings, links, control values, and `(disabled)`
|
|
450
|
+
on a control or button that has it; the chat's own UI is skipped via `data-agent-ui`, and a password value is never
|
|
451
|
+
read), `readState(key)` (one masked store key — a key that is unknown or that this screen does not read is refused
|
|
452
|
+
*with the keys it can* read, the way `readScreen` names its sections), and `highlight(target)`. Declaring a hook tool
|
|
453
|
+
under one of those names shadows the built-in, so reuse them only to mean that. **There is no general-purpose wait**:
|
|
454
|
+
a built-in one was reachable on every screen and a model spent it on whatever key it liked, parking turns nobody
|
|
455
|
+
asked to park. Waiting belongs to the screen that knows what is worth waiting for — publish an `st.tool` beside the
|
|
456
|
+
control that starts the work, and let it await the work.
|
|
451
457
|
- **A tool that changes the screen waits for the screen before it answers.** `router.push` returns while the RSC
|
|
452
458
|
payload is still in flight and a store action that fires `void fetch.*` commits a tick later, so `navigate`
|
|
453
459
|
awaits `ScreenSettle.wait()` — DOM quiescence, bounded, because the client router hands its promise to nobody —
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@akanjs/cli",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.103",
|
|
4
4
|
"sourceType": "module",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"publishConfig": {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"@langchain/openai": "^1.4.6",
|
|
34
34
|
"@tailwindcss/node": "^4.3.0",
|
|
35
35
|
"@trapezedev/project": "^7.1.4",
|
|
36
|
-
"akanjs": "3.0.0-alpha.
|
|
36
|
+
"akanjs": "3.0.0-alpha.103",
|
|
37
37
|
"chalk": "^5.6.2",
|
|
38
38
|
"commander": "^14.0.3",
|
|
39
39
|
"dayjs": "^1.11.20",
|