For AI agents: the complete documentation index is available at https://a3s-lab.github.io/ash/v0.1.0/en/llms.txt, the full documentation bundle is available at https://a3s-lab.github.io/ash/v0.1.0/en/llms-full.txt, and this page is available as Markdown at https://a3s-lab.github.io/ash/v0.1.0/en/index.md.
  • English
  • v0.1.0
  • OPEN SOURCE · RUST · CODING AGENT FIRST

    AI Native Shell.

    Typed requests for repository discovery, process execution, transactional edits, DAG parallelism, snapshots, and retrievable evidence.

    $ash run < .ash/task.ason
    ash / coding tasko:| / project
    ash run < .ash/07-project.ason
    06 / 06Project final evidence

    Keep full data at @7; retrieve only p/l/t

    Canonical request
    o:|
    a:[@7,d,0,64,p,l,t]
    Result2 rows · retained=@7 · stable
    Task queue

    o:gSearch hitsdone

    o:rRead windowdone

    o:bParallel batchdone

    o:pDigest-guarded patchdone

    o:xRun regression testsdone

    o:|Project final evidencerunning

    Task complete6 operations · 1 compact evidence pack
    s:0
    ASH/1 · ASON/1 · PROJECT
    ASH/1 · 15 TYPED OPERATIONSPARALLEL RUN · STABLE MERGEASON · PROJECT ON DEMANDLINUX · MACOS · WINDOWS
    COMMAND WALKTHROUGH

    Watch ASH complete a coding task

    Scroll to move the terminal through each step. Every stage shows the real command, canonical request, compact result, and field-level notes.

    Scroll to select a step, or click any step to inspect it directly.
    Task execution windowStep 01 / 07
    ash run < .ash/01-search.ason

    Search for literal TODO; no shell process or free-form parsing

    Canonical request · .ash/01-search.ason
    t:1i:17o:ga{q,p,f}:TODO,[src],0u{tok,rec,ms}:256,64,30000
    Compact resultASON/1
    t:3i:17s:0p[1]{i,v}:1,src/lib.rsd[2]{p,l,c,t}:1,42,7,"TODO item"1,87,3,"FIXME item"z:0r:~
    Task execution windowStep 02 / 07
    ash run < .ash/02-read.ason

    Read the first 80 lines of src/lib.rs and retain its digest

    Canonical request · .ash/02-read.ason
    t:1i:19o:ra{p,m,o,n}:[src/lib.rs],1,1,80u{tok,rec,ms}:512,64,30000
    Compact resultASON/1
    t:3i:19s:0p[1]{i,v}:1,src/lib.rsd[1]{p,o,n,h,t,r}:1,1,15,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,"pub mod engine;",~z:0r:~
    Task execution windowStep 03 / 07
    ash run < .ash/03-batch.ason

    Node 1 searches; node 2 reads Cargo.toml after node 1 completes

    Canonical request · .ash/03-batch.ason
    t:1i:80o:ba[2]{i,d,o,a}:1,[],g,"a{q,p,f}:\nTODO,[src],0\n"2,[1],r,"a{p,m,o,n}:\n[Cargo.toml],0,0,32\n"u{tok,rec,ms}:64,16,30000
    Compact resultASON/1
    t:3i:80s:0d[2]{i,o,s,c,r}:1,g,0,0,@42,r,0,0,@5z:8r:~
    Task execution windowStep 04 / 07
    ash run < .ash/04-patch.ason

    Write pub only while src/lib.rs still matches the expected digest

    Canonical request · .ash/04-patch.ason
    t:1i:23o:pa{p,h,i,o,n,v,f}:[src/lib.rs],[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa],[0],[4],[3],[pub],0u{tok,rec,ms}:512,64,30000
    Compact resultASON/1
    t:3i:23s:0p[1]{i,v}:1,src/lib.rsd[1]{p,s,h}:1,0,bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbz:0r:~
    Task execution windowStep 05 / 07
    ash run < .ash/05-test.ason

    Run cargo test --locked; a failure returns error windows and math omission markers

    Canonical request · .ash/05-test.ason
    t:1i:18o:xa{x,v,c,e,in,f}:cargo,[test,--locked],.,["RUST_BACKTRACE=1",-SECRET],~,0u{tok,rec,ms}:512,64,120000
    Compact resultASON/1
    t:3i:18s:5d{k,c,ms,o,e,ro,re}:0,101,842,~,"cargo test --locked\nrunning 200 tests\n⋯18\nerror[E0609]: no field `missing`\n --> src/lib.rs:42:9\ncompile crate-a\nlink crate-a\n×64#2\ndetail: field unavailable\nhelp: inspect schema\n⋯24\ntest result: FAILED\nfinished",~,@12e{c,q,p,x,a}:401,0,4,~,~z:11r:~
    Task execution windowStep 06 / 07
    ash run < .ash/06-snapshot.ason

    Capture the workspace; a later m:1 + r:@9 request returns only the delta

    Canonical request · .ash/06-snapshot.ason
    t:1i:24o:sa{p,d,m,r,f}:[.],64,0,~,0u{tok,rec,ms}:512,64,30000
    Compact resultASON/1
    t:3i:24s:0p[2]{i,v}:1,Cargo.toml2,src/lib.rsd[2]{p,c,k,z,h}:1,0,0,912,bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb2,0,0,244,ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccz:8r:@9
    Task execution windowStep 07 / 07
    ash run < .ash/07-project.ason

    From @7, select table d, slice 0..64, and keep only p/l/t

    Canonical request · .ash/07-project.ason
    t:1i:44o:|a:[@7,d,0,64,p,l,t]u{tok,rec,ms}:256,64,30000
    Compact resultASON/1
    t:3i:44s:0d[2]{p,t}:src/a.rs,TODOsrc/b.rs,FIXMEz:10r:@7
    FORMULA SYNTAX

    The symbol is the operation

    Hover or focus a symbol for its note; tap to open on touch. Every operator has fixed operands and one canonical encoding.

    SIX FORMULAS · 126 B · 80 / 80 TOKENStiktoken-rs 0.12.0 · cl100k_base · o200k_base
    RUNTIME

    Tokio and Rayon share one budget

    Tokio handles processes, pipes, RPC, deadlines, and cancellation. Rayon handles search, hashing, diffs, and reduction. The governor bounds global, session, and request concurrency.

    Execution topologyLIVE / BOUNDED
    ASH/1 REQUEST
    HIERARCHICAL GOVERNOR
    IOTOKIO I/O PLANErpc · process · pipe · cancel
    CPURAYON CPU PLANEsearch · hash · diff · reduce
    STABLE MERGECANONICAL ASON
    HOST BUDGETSESSION BUDGETREQUEST BUDGETACTION PERMIT
    OUTPUT FORMAT

    ASON: compact, stable, retrievable

    Homogeneous records use columns, paths use dictionaries, and large values remain available by reference. Stable merge keeps output deterministic.

    ASON / CANONICALcolumns + refs
    s:0
    a:search
    d{p}:
    0:"src/runtime.rs"
    r{p,l,c}:
    0,42,governor
    0,88,stable_merge
    z{shown,total}:
    2,17
    CL100K / O200K0.62×compact row-object JSONRead the ASON format
    PERMISSIONS

    Risky actions require a one-time permit

    A permit binds the session, action, policy, and expiry. File transactions add digest checks, a journal, and rollback.

    SECURITY
    PLATFORMS

    Linux, macOS, and Windows

    x86-64 and ARM64 use the same protocol. Releases verify signatures, SBOM, provenance, installation, updates, and rollback.

    linuxmacoswindowsx86-64 + arm64
    INSTALL / LOCAL

    Choose a platform and copy the command

    This is a pre-release. Cargo can build from source; release installers exit until signed binaries are available.

    Read installation notesV0.1.0 · SOURCE CHECKPOINT
    RELEASE INSTALLERx86-64 · ARM64
    curl --proto '=https' --tlsv1.2 -LsSf https://raw.githubusercontent.com/A3S-Lab/ash/d8756614ad6a54128336f50a6a52fcb6f92d1305/install.sh | sh

    Signed binaries are not published yet; the installer exits before download.

    DOCS AND SOURCE

    Start with the protocol, CLI, or source.

    Interfaces, architecture decisions, and implementation are public.