6eb2de5dc0
docs: update all documentation for management API + dashboard
...
Updated 9 files to reflect:
Management API (axum, port 9090) — embedded in bascule-server
Dioxus dashboard components (WASM web target)
6 crates in workspace (was 4)
README.md:
Added Management API + Dashboard features section
Added dashboard row to comparison table
docs/architecture.md:
Updated diagram showing dual-listener architecture
Added Management API section explaining Arc<SessionStore> sharing
Updated crate table (6 crates)
docs/configuration.md:
Added [dashboard] config section reference
docs/observability.md:
Added Management API monitoring section with curl examples
docs/quickstart.md:
Added Management API quick start section
docs/comparison.md:
Added dashboard and TPM attestation rows
CLAUDE.md + CONTRIBUTING.md:
Updated crate lists and feature flags
config/bascule.example.toml:
Added [dashboard] section
All 17 README links verified valid. Build clean.
Signed-off-by: Tyler King <tking@guildhouse.dev>
2026-04-05 17:17:18 -04:00
2fa92f8635
docs: comprehensive documentation + developer experience polish
...
New files:
CONTRIBUTING.md — dev setup, code style, PR process
CLAUDE.md — workspace context for Claude Code
Makefile — build, test, lint, fmt, docker, helm-lint, dev, ci
.editorconfig — consistent formatting
rustfmt.toml — Rust formatting config
docs/kubernetes.md — Helm install, values, architecture
docs/bascule-shell.md — client shell install, config, TPM
charts/bascule/README.md — Helm quick start
Updated:
README.md — accurate feature matrix, clear shipped vs planned
config/bascule.example.toml — full reference (72 lines, all fields)
All 15 README links verified valid.
Helm lint clean. Build passes. 0 substrate deps.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 10:53:08 -04:00
02142f7be4
feat: Entra Agent ID auth provider + governance leak cleanup
...
New crate: bascule-auth-agent-id
Microsoft Entra Agent ID authentication for AI agents
Validates OAuth tokens against Entra JWKS (60min cache)
Extracts agent metadata: type, blueprint, sponsor, scopes
Detects on-behalf-of (delegated) agents
Token-as-password pattern for SSH auth
Cleanup:
Removed all governance-specific references from comments
SessionHandler trait is the only extension point
Zero substrate/chronicle/gsap dependencies
Config example uses neutral terminology
Config:
[auth.agent_id] section for Entra configuration
tenant_id, audiences, multi_tenant fields
3 crates: bascule-core, bascule-server, bascule-auth-agent-id
938 lines total, 5.6MB binary, 0 substrate deps.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 22:35:32 -04:00
bfa26cfd15
feat: Bascule — identity-aware SSH proxy
...
Open-source SSH proxy with pluggable authentication and
extensible session handling. Zero external governance dependencies.
Core (bascule-core):
russh 0.46 SSH server with PTY bridge (portable-pty)
Pluggable auth: AuthProvider trait (SSH keys, accept-all dev mode)
SessionHandler trait for extending behavior (audit, governance)
TOML configuration, ephemeral Ed25519 host key generation
Binary (bascule-server):
Single binary, 5.6MB release build
CLI with --config flag
Default: accept-all auth on port 2222
Extension points:
AuthProvider — implement for OIDC, certificates, custom auth
SessionHandler — implement for audit, governance, recording
DefaultHandler — passthrough (ships with open-source version)
Zero substrate/chronicle/gsap/hfl dependencies.
Apache 2.0 License.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 22:25:33 -04:00