CLI
Runtime commands
Persistent local runtime, daemon, sessions, events, and memory.
Runtime commands
The runtime layer (spec-my-A §24) adds a local-first persistent engineering environment on top of the stateless CLI.
Daemon
asa daemon start
asa daemon start --detach
asa daemon run
asa daemon status
asa daemon status --rich
asa daemon stopstartinitializes SQLite state under.asagiri/runtime/--detachlaunchesasa daemon runin the background (worker loop + hook queue)runis the long-running worker (event bus, hook execution)
Sessions and branches
asa session create onboarding-redesign --product workspace-saas --flow onboarding
asa session list
asa session attach onboarding-redesign
asa session branch onboarding-redesign --name onboarding-enterprise
asa session graphEvents
asa runtime events
asa runtime events --followMemory
asa memory list
asa memory list --scope feature
asa memory list --query "onboarding failure"
asa memory consolidateScoped memory is stored in runtime.db (memory_entries table) with scoring, aging, and consolidation.
Skills
asa skills listSkills live under .asagiri/skills/**/*.yaml and are injected contextually by scope tags.
Hooks
Configure .asagiri/runtime/hooks.yaml:
hooks:
on:
session.created:
- run: asa versionOnly asa … commands are executed by the worker for safety.
Local HTTP API
asa runtime serve --port 8765See runtime serve for REST endpoints, auth token, and SDKs.
SDK
In-process (Go):
rt, _ := asagiri.Connect(repoRoot)
defer rt.Close()
sess, _ := rt.StartSession("my-session", "workspace-saas", "onboarding")
_ = rt.RunFlow(sess.ID, "onboarding")HTTP (Go or TypeScript):
client := asagiri.ConnectHTTP(asagiri.HTTPOptions{BaseURL: "http://127.0.0.1:8765"})import { AsagiriClient } from "@laprogrammerie/asagiri";