Skip to content

Epic: 2keychains v0.5 MVP — Local Secret Broker #1

@helixclaw

Description

@helixclaw

Overview

Implement the v0.5 MVP of 2keychains as defined in ROADMAP.md. This is a local-only secret broker that replaces direct secret access with a controlled intermediary. It introduces manual approval, contextual justification, UUID abstraction, and ephemeral injection.

Key Design Decisions

  • Local-only: Runs on the same machine as the AI agent
  • Plain JSON file for secret storage (NOT macOS keychain — that's a later phase)
  • Discord webhook/bot for the approval flow
  • Clean channel interface so future notification integrations (Slack, email, SMS) can be swapped in
  • UUID abstraction: AI only interacts with UUID references, never human-readable names or raw values
  • Contextual justification required for every access request (reason, task reference, duration)
  • Time-bound ephemeral injection: Secrets injected into process environments for a short window, then purged
  • Stateless flow: Request → Approve → Fetch → Inject → Purge

Technology

  • TypeScript / Node.js
  • commander for CLI
  • discord.js for bot, Discord webhook API for notifications
  • uuid for UUID generation
  • Plain JSON file for secret persistence

Exit Criteria (from ROADMAP)

  • All secrets routed through broker
  • Approval workflow stable
  • Logging consistent and reliable

Security Limitations (acknowledged for v0.5)

  • Runs on same host as AI
  • Can be bypassed by attacker with system-level access
  • Not resistant to privilege escalation

Out of Scope (Post-MVP)

  • macOS Keychain integration
  • 1Password sync
  • Honeytoken / decoy secrets
  • Rate limiting
  • Anomaly detection

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions