Initialize the
Loom
Weaver is distributed as a single binary via Cargo. Domain commands use a local daemon for state and sandboxing, while capability probing runs entirely in the CLI process. Follow this guide to weave your first project.
Prerequisites
Rust Toolchain
1.75.0 or newer required for installation.
Linux Environment
Kernel 5.10+ for full seccomp-bpf sandbox support.
Shell Access
Bash, Zsh, or Fish. Root privileges not required.
Installation
Install from Crates.io
Download and compile the weaver binary. This includes both the client CLI and the daemon.
cargo install weaver
Verify Installation
No init ceremony required – Weaver discovers configuration through XDG paths, environment variables, saved profiles, and CLI flags, all with sensible defaults. Run the current capability probe to confirm the binary is installed:
weaver --capabilities
The planned 0.1.0 resource-style context dump is
weaver context --json.
Need the real defaults, XDG discovery rules, or the daemon JSONL envelope? Use the docs hub instead of this quick-start page.
Try a Command
The daemon auto-starts on the first routed command – no manual launch needed. Just run the current verification example:
weaver definitions get --uri file:///path/to/project/src/main.rs --position 1:1
Manual Daemon Control
Use weaver daemon start, weaver daemon stop, or weaver daemon status if you need to manage the daemon explicitly.
Your First Weave
Execute the current verification example, the prototype patch flow, and the planned diagnostics workflow on a sample project.
DEFINITIONS GET
Current verification example: jump to a symbol definition to understand the code before editing.
--uri file:///path/to/project/src/main.rs \
--position 10:5
ACT APPLY-PATCH
Prototype patch application through Double-Lock validation.
PLANNED DIAGNOSTICS LIST
Planned 0.1.0 resource-style diagnostics workflow for confirming no regressions.
--uri file:///path/to/project/src/main.rs
Troubleshooting
Unix Socket Permission Denied
If you see Error: connect(2) failed, the daemon socket may have incorrect ownership. The default socket lives at $XDG_RUNTIME_DIR/weaver/weaverd.sock (fallback: /tmp/weaver/uid-$UID/weaverd.sock). The usual fix is to ensure the daemon runs as the correct user rather than chowning the socket directly:
weaver daemon stop && weaver daemon start
Windows Prototype Compatibility
The current non-Unix prototype defaults to loopback TCP at tcp://127.0.0.1:9779. This is a same-host compatibility path, not a remote endpoint. Keep the host on IPv4 or IPv6 loopback; non-loopback binding is outside the planned 0.1.0 local-only model.
daemon_socket = { transport = "tcp", host = "127.0.0.1", port = 9779 }