The minter parses `Request.agent` with `Ident::parse`, as the controller does, before it makes a scratch directory, runs `claude auth login` or touches the store, and answers `Failed` otherwise. The name becomes a directory name and a store path in the one service that writes every agent's credentials, so it is checked at this service's own boundary. The doc states that the `operatorsOnly` authelia rule, not the controller, keeps the routes to operators, and that a stale version record waits for a relogin. The env-strip comment says it is defence in depth. Refs #5268
28 lines
749 B
TOML
28 lines
749 B
TOML
[package]
|
|
name = "swarm-claude-login"
|
|
version.workspace = true
|
|
readme = "README.md"
|
|
edition.workspace = true
|
|
|
|
[[bin]]
|
|
name = "swarm-claude-login"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
async-nats.workspace = true
|
|
# StreamExt::next on the subscription.
|
|
futures-util.workspace = true
|
|
hive-log.workspace = true
|
|
serde_json.workspace = true
|
|
# The login subject and the shapes the controller sends and reads back.
|
|
# The agent name a request carries is parsed as the controller parses it.
|
|
hive-types.workspace = true
|
|
swarm-queue-client.workspace = true
|
|
# The credentials and queue client secret paths, and the store login.
|
|
swarm-secret-client.workspace = true
|
|
tokio.workspace = true
|
|
tracing.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|