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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
185 changes: 185 additions & 0 deletions Cargo.lock

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

18 changes: 18 additions & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,24 @@ glob = "0.3"
# Crypto
sha2 = "0.10"
base64 = "0.22"
# Scoped personal-access-token storage: OS keychain (primary) with an
# AEAD-encrypted-file fallback for headless Linux/CI where no OS keychain is
# available. `keyring` is the portable keychain abstraction; chacha20poly1305 +
# argon2 protect the fallback file at rest.
#
# The Linux backend is `linux-native` (kernel keyutils), NOT `sync-secret-service`.
# The Secret Service backend links the system `libdbus` at build time through
# pkg-config, so it fails to *compile* on a headless / CI Linux host that lacks
# `libdbus-1-dev` — a harder failure than a runtime missing-daemon error. keyutils
# is pure syscalls: no build-time system dependency, no D-Bus daemon, so it builds
# everywhere and works headless. See docs/AGENT_AUTH.md for the finding.
keyring = { version = "3", default-features = false, features = [
"apple-native",
"windows-native",
"linux-native",
] }
chacha20poly1305 = "0.10"
argon2 = "0.5"

# Async utilities
futures = "0.3"
Expand Down
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,7 @@ you've written yourself.
actual adr-bot # analyze repo & write AI context files
actual status # check output file state (managed markers, staleness)
actual auth # verify authentication
actual auth create-token # mint a scoped token for CI / agents (prototype)
actual config show # view current configuration
actual config set # set a config value
actual config path # print config file location
Expand All @@ -130,6 +131,10 @@ actual models # list known model names grouped by runner
actual cache clear # clear local analysis and tailoring caches
```

For non-interactive (CI / agent) authentication with scoped access tokens, see
[Agent authentication](docs/AGENT_AUTH.md). It also covers the
dedicated-token-per-agent and never-in-prompt rules agents must follow.

## Configuration

Config lives at `~/.actualai/actual/config.yaml` and is created automatically
Expand Down
Loading
Loading