⚠️ AI-Agent-Only RepositoryThis repo is planned, maintained, and managed exclusively by AI Agents. Slop issues, rough edges, and AI artifacts are expected and intentionally present as part of an HITL-less / minimized AI-DD metaproject focused on learning, refining, and brute-force training both the agents and the human operator. Bug reports and contributions are still welcome, but please expect AI-generated code, comments, and documentation throughout.
Work state: ACTIVE · Progress:
█████░░░░░ 50%Rust configuration framework (layered config/env/secrets); pre-1.0 · updated 2026-06-02
Pinned references (Phenotype-org)
- MSRV: see rust-toolchain.toml
- cargo-deny config: see deny.toml
- cargo-audit: rustsec/audit-check@v2 weekly
- Branch protection: 1 reviewer required, no force-push
- Authority: phenotype-org-governance/SUPERSEDED.md
Local-first configuration management, feature flags, secrets, and version tracking for Phenotype projects with auditable change history and CLI-first workflows.
Configra is a comprehensive configuration SDK for Phenotype projects providing consistent management of settings, feature flags, secrets, and version information. It offers local-first persistence with team collaboration support, full audit trails, and point-in-time restore capabilities.
- Language: Rust (primary), with Go/Python bindings available
- Frameworks: Clap (CLI), Ratatui (TUI)
- Persistence: SQLite with auto-migration
- Cryptography: AES-256-GCM for secrets
- Key Crates: pheno-core, pheno-db, pheno-crypto, pheno-cli
- Local-first configuration with team sync support
- Feature flag lifecycle management (create, enable, disable, rollback)
- Secret value storage with encryption at rest
- Version inspection and rollout state tracking
- Comprehensive audit trail with change history
- Point-in-time restore capabilities
- Interactive terminal UI (
phenoctl tui) - CLI-first workflows with shell completion
- SQLite backend with auto-migration
- Zero external service dependencies
# Clone repository
git clone https://github.com/KooshaPari/Configra.git
cd Configra
# Review governance
cat CLAUDE.md
# Build all crates
cargo build --workspace
# Install CLI tool
cargo install --path pheno-cli
# Configure application settings
phenoctl config set app.name "My Application"
phenoctl config set app.version "1.0.0"
# Manage feature flags
phenoctl flags create dark-mode --description "Enable dark mode"
phenoctl flags enable dark-mode
phenoctl flags status
# Manage secrets
phenoctl secrets set API_KEY
phenoctl secrets set DATABASE_URL
# Check versions
phenoctl version show
# Interactive TUI
phenoctl tui
# Run tests
cargo test --workspaceConfigra/
├── crates/
│ ├── pheno-core/ # Core types and traits
│ │ ├── lib.rs
│ │ └── models.rs # ConfigEntry, FeatureFlag, etc.
│ ├── pheno-db/ # SQLite persistence
│ │ ├── lib.rs
│ │ ├── store.rs # CRUD operations
│ │ ├── migrations.rs # Schema management
│ │ └── audit.rs # Audit trail
│ ├── pheno-crypto/ # AES-256-GCM encryption
│ │ ├── lib.rs
│ │ └── cipher.rs
│ └── pheno-cli/ # CLI and TUI
│ ├── main.rs # Entry point
│ ├── commands/ # Command handlers
│ ├── tui/ # Terminal UI
│ └── shell/ # Shell completions
├── docs/
│ ├── ARCHITECTURE.md # System design
│ ├── QUICKSTART.md # Getting started
│ ├── GUIDE.md # Usage guide
│ └── API.md # API reference
├── tests/
│ ├── integration/ # Integration tests
│ └── e2e/ # End-to-end tests
├── Cargo.toml # Workspace manifest
└── Cargo.lock # Dependency lock
Configra is a tier-2 library substrate per ADR-023 (agent-effort governance) + ADR-040 (test-coverage gates per tier). The canonical four-crate split, each with its own README, CHANGELOG, AGENTS, and ≥ 80 % line coverage, is:
Configra/ v0.4.0 (workspace)
├── crates/
│ ├── pheno-config/ typed runtime Config + ConfigBuilder
│ │ ├── README.md · CHANGELOG.md · AGENTS.md · llms.txt
│ │ └── (env-var cascade, TOML+env overlay, combine())
│ ├── settly/ settings lifecycle (validation, migration)
│ │ ├── README.md · CHANGELOG.md · AGENTS.md
│ │ └── (hexagonal: domain / application / adapters / infrastructure)
│ ├── config-schema/ JSON schema validation primitives
│ │ ├── README.md · CHANGELOG.md · AGENTS.md ← T16 NEW
│ │ └── (SchemaField + ConfigSchema + SchemaError)
│ └── phenotype-config-loader/ generic JSON/TOML file loaders
│ ├── README.md · CHANGELOG.md · AGENTS.md ← T16 NEW
│ └── (load_json<T>, load_toml<T>, ConfigLoadError)
├── typescript/packages/conft/ TS edge layer (drained from Conft, PR-#47)
├── ABSORBED-FROM/ index of the 8 source repos drained here
└── docs/migrations/ per-source migration notes
Tier-2 quality bar (every sub-crate):
| Artifact | Status (2026-06-20) | Owner |
|---|---|---|
README.md |
✅ all 4 sub-crates | T16 |
CHANGELOG.md |
✅ all 4 sub-crates | T16 |
AGENTS.md |
✅ all 4 sub-crates | T16 |
| Coverage ≥ 80 % | ✅ library tier (ADR-040) | ongoing |
cargo clippy -- -D warnings |
✅ | CI |
cargo audit |
✅ weekly | CI |
Why four crates, not one? Each sub-crate has a distinct concern:
runtime Config (pheno-config) vs. settings lifecycle (settly) vs.
field-shape validation (config-schema) vs. raw file loading
(phenotype-config-loader). Splitting keeps each surface minimal and
lets downstream consumers depend on the smallest primitive they need.
See docs/migrations/ for per-source-repo migration notes and
ABSORBED-FROM/ for the index of all 8 source repos drained into
Configra.
- AgilePlus — Specification and work tracking
- phenotype-shared — Shared infrastructure
- thegent — Dotfiles management
- CLAUDE.md — Development standards and AgilePlus mandate
- docs/ARCHITECTURE.md — System design and crate relationships
- docs/QUICKSTART.md — Getting started guide
- docs/GUIDE.md — CLI and feature usage
- License: MIT
Status: Active development
Maintained by: Phenotype Org
Last Updated: 2026-04-24
MIT — see LICENSE.