Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion docs/execution-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ Smithers owns workflow authoring concepts and workflow graph, run, node, iterati
resume semantics. `svvy` owns Shell command tracking, app approval/sandbox execution, pi-backed
workflow task-agent attempt surfaces, durable observed Smithers facts, and the narrow runtime-owned
`runTaskAgent` bridge. Agents use official Smithers CLI commands through Shell, such as
`bunx smithers-orchestrator ...`, according to Smithers documentation and the active
`bunx smthrs ...`, according to Smithers documentation and the active
sandbox/approval policy. `svvy` does not expose `workflow.*`, `svvyx smithers`, or loopback
Smithers runtime-control tools as product surfaces.

Expand Down
4 changes: 2 additions & 2 deletions docs/features.ts
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ export const PRODUCT_FEATURES: ProductFeature[] = [
name: "Extension CLI Requirements",
status: "in-progress",
summary:
"Lets extensions declare required CLIs or command providers with a binary name, optional package name, default target version, version-check command, and reusable exact-version install/update command template when that provider is installed rather than `bunx`-resolved; reports missing, unknown, available, detected version, current version, latest version, and update-available state through Extension Managing inspect/build and the Extensions UI; keeps user-clicked Extensions UI install/update admission outside the shipped public runtime facade surface; excludes dependency-action admission from the shipped public runtime facade surface unless a runtime-owned contract specifies app-global scope, immutable dependency planning, durable command and approval facts, sandboxed package-manager execution, readiness refresh, invalidation, cancellation, shutdown, and recovery; keeps `@svvy/extensions` responsible for immutable dependency command planning and normalized dependency identity interpretation while committed dependency approval facts are DB/product-state-backed `@svvy/state` facts read through `ExtensionStatePort`, with optional origin workspace identity as UI lineage only; agent-initiated installs remain ordinary Shell work; uses default versioned requirements for `cx-cli@0.7.1`, Smithers documentation generated from `smithers-orchestrator@0.22.0` while preserving official `bunx smithers-orchestrator ...` commands, and `@tiny-fish/cli@0.1.6`; and keeps Git and GitHub CLI requirements unversioned because their builtin instructions are not pinned to a specific CLI release.",
"Lets extensions declare required CLIs or command providers with a binary name, optional package name, default target version, version-check command, and reusable exact-version install/update command template when that provider is installed rather than `bunx`-resolved; reports missing, unknown, available, detected version, current version, latest version, and update-available state through Extension Managing inspect/build and the Extensions UI; keeps user-clicked Extensions UI install/update admission outside the shipped public runtime facade surface; excludes dependency-action admission from the shipped public runtime facade surface unless a runtime-owned contract specifies app-global scope, immutable dependency planning, durable command and approval facts, sandboxed package-manager execution, readiness refresh, invalidation, cancellation, shutdown, and recovery; keeps `@svvy/extensions` responsible for immutable dependency command planning and normalized dependency identity interpretation while committed dependency approval facts are DB/product-state-backed `@svvy/state` facts read through `ExtensionStatePort`, with optional origin workspace identity as UI lineage only; agent-initiated installs remain ordinary Shell work; uses default versioned requirements for `cx-cli@0.7.1`, Smithers documentation generated from `smthrs@0.22.0` while preserving official `bunx smthrs ...` commands, and `@tiny-fish/cli@0.1.6`; and keeps Git and GitHub CLI requirements unversioned because their builtin instructions are not pinned to a specific CLI release.",
sourceSpecs: [
"docs/specs/extensions-and-tools.spec.md",
"docs/specs/extension/git.extension.spec.md",
Expand Down Expand Up @@ -284,7 +284,7 @@ export const PRODUCT_FEATURES: ProductFeature[] = [
name: "Prompt-Only Smithers CLI Guidance",
status: "in-progress",
summary:
"Defines Smithers as a builtin prompt-only extension for handler-thread workflow authoring, generated from the current Extension Managing-selected Smithers documentation version with a small svvy boundary appendix; agents use official `bunx smithers-orchestrator ...` commands through Shell against workspace `.smithers/` packages, TypeScript source imports from package `smithers-orchestrator`, reusable svvy assets are documented by the Workflows extension and imported only from generated `@svvyx/workflows`, and agents do not receive product workflow wrapper tools, Smithers runtime-control APIs or broad bridge tools, Smithers TypeScript facades, or workspace-local svvy workflow source guidance.",
"Defines Smithers as a builtin prompt-only extension for handler-thread workflow authoring, generated from the current Extension Managing-selected Smithers documentation version with a small svvy boundary appendix; agents use official `bunx smthrs ...` commands through Shell against workspace `.smithers/` packages, TypeScript source imports from package `smthrs`, reusable svvy assets are documented by the Workflows extension and imported only from generated `@svvyx/workflows`, and agents do not receive product workflow wrapper tools, Smithers runtime-control APIs or broad bridge tools, Smithers TypeScript facades, or workspace-local svvy workflow source guidance.",
sourceSpecs: [
"docs/prd.md",
"docs/specs/extension/smithers.extension.spec.md",
Expand Down
4 changes: 2 additions & 2 deletions docs/prd.md
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,7 @@ Reusable values are accessed through those namespaces, for example `Agents.defau
Smithers task usage passes the generated parameter record into `Agents.defineTaskAgent`, which returns the Smithers-compatible `AgentLike` value intended for `<Task agent={...}>`:

```tsx
import { Task } from "smithers-orchestrator";
import { Task } from "smthrs";
import { Agents } from "@svvyx/workflows";

const reviewer = Agents.defineTaskAgent(Agents.reviewerAgent);
Expand All @@ -493,7 +493,7 @@ export default (
Direct parameters are also valid when the workflow source owns the task-agent configuration:

```tsx
import { Task } from "smithers-orchestrator";
import { Task } from "smthrs";
import { Agents } from "@svvyx/workflows";

const explorer = Agents.defineTaskAgent({
Expand Down
4 changes: 2 additions & 2 deletions docs/progress.md
Original file line number Diff line number Diff line change
Expand Up @@ -1690,11 +1690,11 @@ This section is governed by `docs/specs/extension/smithers.extension.spec.md`.
for handler threads, with no native Smithers tools, generated TypeScript facades, or bundled app
Smithers runtime dependencies. Commit(s): `673837a`, `118fd39c9f`.
- [x] Generate the Smithers instruction fragment from the Extension Managing-selected
`smithers-orchestrator` documentation version while excluding GUI, Gateway, MCP, HTTP server,
`smthrs` documentation version while excluding GUI, Gateway, MCP, HTTP server,
OpenTelemetry, DevTools, event-streaming, OpenAPI, Effect, and wrapper-oriented fragments that
are not current `svvy` product surfaces. Commit(s): `c91f88d377`, `dcc79bb073`.
- [x] Keep the svvy Smithers boundary instruction focused on workspace `.smithers/`, official
`bunx smithers-orchestrator ...` CLI usage through Shell, official Smithers CLI operations, and
`bunx smthrs ...` CLI usage through Shell, official Smithers CLI operations, and
reusable svvy workflow assets as Workflows-extension material. Commit(s): `c91f88d377`,
`a02bd48`.
- [x] Keep orchestrators aware that workflow action normally delegates into handler threads, while
Expand Down
6 changes: 3 additions & 3 deletions docs/redesign-implementation-checklist.md
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ only when the capability and its tests are present.
dependency-action command path with exact contracts, approval linkage, sandbox launch policy,
subprocess lifetime, command facts, readiness refresh, and tests; agent-initiated setup
remains ordinary Shell work. Sources: `docs/prd.md`, `docs/features.ts`.
- [x] Declare default target CLI versions for `cx-cli@0.7.1`, `smithers-orchestrator@0.22.0` invoked through the official `bunx smithers-orchestrator ...` command path, and `@tiny-fish/cli@0.1.6`; keep Git and GitHub CLI requirements unversioned. Sources: `docs/features.ts`, `docs/specs/extension/cx.extension.spec.md`, `docs/specs/extension/web.extension.spec.md`, `docs/specs/extension/smithers.extension.spec.md`.
- [x] Declare default target CLI versions for `cx-cli@0.7.1`, `smthrs@0.22.0` invoked through the official `bunx smthrs ...` command path, and `@tiny-fish/cli@0.1.6`; keep Git and GitHub CLI requirements unversioned. Sources: `docs/features.ts`, `docs/specs/extension/cx.extension.spec.md`, `docs/specs/extension/web.extension.spec.md`, `docs/specs/extension/smithers.extension.spec.md`.

## Direct Tools, Shell, Apply Patch, And Sandbox

Expand Down Expand Up @@ -476,7 +476,7 @@ only when the capability and its tests are present.
- [x] Keep Smithers as the workflow runtime and authoring model used directly through the official Smithers CLI. Sources: `docs/prd.md`, `docs/specs/extension/smithers.extension.spec.md`.
- [x] Make Smithers a builtin prompt-only extension for handler-thread workflow authoring. Sources: `docs/features.ts`, `docs/specs/extension/smithers.extension.spec.md`.
- [x] Add no native Smithers tools, no generated Smithers TypeScript facades, and no product workflow wrapper tools. Sources: `docs/prd.md`, `docs/specs/extension/smithers.extension.spec.md`.
- [x] Preserve upstream Smithers `bunx smithers-orchestrator ...` examples as the official generated prompt guidance, including `init`, `workflow run`, `ps`, `inspect`, `logs`, approvals, and resume; do not rewrite them to a global `smithers` binary. Sources: `docs/specs/extension/smithers.extension.spec.md`, `docs/vendor/smithers/smithers-0.22.0.llms-full.txt`.
- [x] Preserve upstream Smithers `bunx smthrs ...` examples as the official generated prompt guidance, including `init`, `workflow run`, `ps`, `inspect`, `logs`, approvals, and resume; do not rewrite them to a global `smithers` binary. Sources: `docs/specs/extension/smithers.extension.spec.md`, `docs/vendor/smithers/smithers-0.22.0.llms-full.txt`.
- [x] Generate Smithers instruction content from Extension Managing-selected official Smithers documentation plus the bounded svvy appendix. Sources: `docs/specs/extension/smithers.extension.spec.md`, `docs/vendor/smithers/smithers-0.22.0.llms-full.txt`.
- [x] Exclude GUI, Gateway, MCP, HTTP server, OpenTelemetry, DevTools, event-streaming, OpenAPI, Effect, and wrapper-oriented fragments not current svvy surfaces from generated Smithers prompt guidance. Sources: `docs/progress.md`, `docs/specs/extension/smithers.extension.spec.md`.
- [x] Keep official Smithers concepts in guidance where relevant: `.smithers/`, JSX authoring, official CLI approvals/resume, stable task ids, outputs, schemas, and render-loop behavior. Sources: `docs/specs/extension/smithers.extension.spec.md`, `docs/vendor/smithers/smithers-0.22.0.llms-full.txt`.
Expand Down Expand Up @@ -839,7 +839,7 @@ only when the capability and its tests are present.
- [x] Add focused `@svvyx/extensions` generation tests for file/build-eligible user `svvyx` extension reference exports with workflow task-agent opt-in, approved dependencies, and successful current source/build evidence, plus stale/deleted, instruction-only, dependency-blocked, build-failed, and no-current-build-evidence exclusion.
- [x] Add focused Workflows save source-boundary tests for workspace `.smithers/`, outside-source rejection, symlink escape rejection, generated-link rejection, nested workdir resolution, facade rejection, and multi-open-workspace package refresh.
- [x] Add focused generated-output writable-boundary tests for Apply Patch rejection, ordinary Shell rejection/cleanup, unrecognized shell writers, long-running Shell completion, workspace package-link writes, and allowed source-driven `svvyx workflows build`.
- [x] Add Smithers prompt-generation tests from pinned `smithers-orchestrator@0.22.0` docs plus svvy boundary appendix and excluded fragment list. Sources: `docs/specs/extension/smithers.extension.spec.md`.
- [x] Add Smithers prompt-generation tests from pinned `smthrs@0.22.0` docs plus svvy boundary appendix and excluded fragment list. Sources: `docs/specs/extension/smithers.extension.spec.md`.
- [x] Add Web extension tests proving TinyFish prompt-only behavior, exact CLI requirement, no Web native/generated surfaces, no Firecrawl/provider settings, and `networkAccess` gating. Sources: `docs/specs/extension/web.extension.spec.md`.
- [x] Add workspace-tab/default-workspace tests for startup restore, default workspace creation, Open Workspace retargeting, New Tab, Open Workspace in New Tab, duplicate same-cwd tab sharing, explicit `workspaceId` routing, and tab status badges. Sources: `docs/specs/default-workspace-and-open-workspace.spec.md`.
- [x] Add Dockview tests for layout slots A/B/C, persistence, duplicated surface panels, independent scroll, drag/drop placement policy, static panes, focus restore, panel-location indicators, and close detachment semantics. Sources: `docs/specs/pane-layout.spec.md`.
Expand Down
2 changes: 1 addition & 1 deletion docs/references/smithers-gui/.smithers/agents.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// smithers-source: generated
import { ClaudeCodeAgent, CodexAgent, GeminiAgent, PiAgent, KimiAgent, AmpAgent, type AgentLike } from "smithers-orchestrator";
import { ClaudeCodeAgent, CodexAgent, GeminiAgent, PiAgent, KimiAgent, AmpAgent, type AgentLike } from "smthrs";

export const providers = {
claude: new ClaudeCodeAgent({ model: "claude-opus-4-6" }),
Expand Down
4 changes: 2 additions & 2 deletions docs/references/smithers-gui/.smithers/bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// smithers-source: seeded
/** @jsxImportSource smithers-orchestrator */
import { Task } from "smithers-orchestrator";
/** @jsxImportSource smthrs */
import { Task } from "smthrs";
import { z } from "zod/v4";

export const commandProbeOutputSchema = z.object({
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// smithers-source: seeded
/** @jsxImportSource smithers-orchestrator */
import { Sequence, Task, type AgentLike } from "smithers-orchestrator";
/** @jsxImportSource smthrs */
import { Sequence, Task, type AgentLike } from "smthrs";
import { z } from "zod/v4";
import FeatureEnumScanPrompt from "../prompts/feature-enum-scan.mdx";
import FeatureEnumRefinePrompt from "../prompts/feature-enum-refine.mdx";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// smithers-source: seeded
/** @jsxImportSource smithers-orchestrator */
import { Parallel, Sequence, Task, type AgentLike } from "smithers-orchestrator";
/** @jsxImportSource smthrs */
import { Parallel, Sequence, Task, type AgentLike } from "smthrs";
import { z } from "zod/v4";

export const forEachFeatureResultSchema = z.object({
Expand Down
4 changes: 2 additions & 2 deletions docs/references/smithers-gui/.smithers/components/GrillMe.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/** @jsxImportSource smithers-orchestrator */
import { Loop, Sequence, Task, type AgentLike, type OutputTarget } from "smithers-orchestrator";
/** @jsxImportSource smthrs */
import { Loop, Sequence, Task, type AgentLike, type OutputTarget } from "smthrs";
import { z } from "zod/v4";
import GrillMeSkill from "skills/grill-me/SKILL.md";
import AskUserInstructions from "../prompts/ask-user-instructions.mdx";
Expand Down
4 changes: 2 additions & 2 deletions docs/references/smithers-gui/.smithers/components/Review.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// smithers-source: seeded
/** @jsxImportSource smithers-orchestrator */
import { Parallel, Task, type AgentLike } from "smithers-orchestrator";
/** @jsxImportSource smthrs */
import { Parallel, Task, type AgentLike } from "smthrs";
import { z } from "zod/v4";
import ReviewPrompt from "../prompts/review.mdx";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// smithers-source: seeded
/** @jsxImportSource smithers-orchestrator */
import { Sequence, Loop, Task, type AgentLike } from "smithers-orchestrator";
/** @jsxImportSource smthrs */
import { Sequence, Loop, Task, type AgentLike } from "smthrs";
import { z } from "zod/v4";
import ImplementPrompt from "../prompts/implement.mdx";
import ValidatePrompt from "../prompts/validate.mdx";
Expand Down
Loading