with one click
loa-credentials
Credential management and audit for API keys and secrets
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Credential management and audit for API keys and secrets
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
| name | loa-credentials |
| description | Credential management and audit for API keys and secrets |
| allowed-tools | Read, Grep, Glob, Bash(printenv LOA_*) |
| capabilities | {"schema_version":1,"read_files":true,"search_code":true,"write_files":false,"execute_commands":{"allowed":[{"command":"printenv","args":["LOA_*"]}],"deny_raw_shell":true},"web_access":false,"user_interaction":false,"agent_spawn":false,"task_management":false} |
| cost-profile | lightweight |
| parallel_threshold | 1000 |
| timeout_minutes | 10 |
| zones | {"system":{"path":".claude","permission":"none"},"state":{"paths":["grimoires/loa"],"permission":"read"},"app":{"paths":["src","lib","app"],"permission":"none"}} |
Manage API credentials for Loa's multi-model provider system. Three storage tiers:
~/.loa/credentials/store.json.enc (Fernet/AES-128)Show credential status for all known providers.
Workflow:
python3 -c "from loa_cheval.credentials import get_credential_provider; from loa_cheval.credentials.health import HEALTH_CHECKS; p = get_credential_provider('.'); [print(f'{k}: {\"configured\" if p.get(k) else \"missing\"}') for k in HEALTH_CHECKS]"Credential Status
─────────────────────────────────
OPENAI_API_KEY configured (env)
ANTHROPIC_API_KEY missing
MOONSHOT_API_KEY configured (.env.local)
Run /loa-credentials set <NAME> to configureStore a credential in the encrypted store.
Workflow:
AskUserQuestion to prompt for the value — NEVER accept credentials as command argumentspython3 -c "from loa_cheval.credentials.store import EncryptedStore; s = EncryptedStore(); s.set('CREDENTIAL_ID', 'VALUE')"Security Rules:
Test all configured credentials against provider endpoints.
Workflow:
python3 -c "from loa_cheval.credentials import get_credential_provider; from loa_cheval.credentials.health import check_all; results = check_all(get_credential_provider('.')); [print(f'{r.credential_id}: {r.status} — {r.message}') for r in results]"Credential Health
─────────────────────────────────
OPENAI_API_KEY ok — OpenAI API: valid (HTTP 200)
ANTHROPIC_API_KEY error — Anthropic API: invalid key (HTTP 401)
MOONSHOT_API_KEY missing — MOONSHOT_API_KEY not configured
Remove a credential from the encrypted store.
Workflow:
python3 -c "from loa_cheval.credentials.store import EncryptedStore; s = EncryptedStore(); print('deleted' if s.delete('CREDENTIAL_ID') else 'not found')"| Error | Cause | Resolution |
|---|---|---|
| "cryptography package required" | Missing dependency | pip install cryptography |
| "No credentials configured" | Empty store + no env vars | Run /loa-credentials set |
| "Health check timeout" | Network issue | Check connectivity |
Credentials stored via this command are automatically discovered by:
{env:VAR} tokens in .loa.config.yaml)The credential chain is: env var → encrypted store → .env.local Environment variables always take priority.
Security and quality audit of application codebase
Autonomous agent execution mode
Bridgebuilder — Autonomous PR Review
Browse and install construct packs from the Loa Constructs Registry
Triage a bug report through structured phases and create micro-sprint
BUTTERFREEZONE Generation Skill