mirror of
https://github.com/PR0M3TH3AN/SeedPass.git
synced 2026-11-03 19:34:45 +00:00
- Python-compatible ~/.seedpass layout: fingerprints.json (same shape, indent=4), per-profile dirs with parent_seed.enc (kdf/ct wrapper; unlock honors argon2id metadata and falls back across pbkdf2 iteration counts), index-key-encrypted seedpass_config.json.enc with ConfigManager defaults. - CLI: fingerprint list/add/switch/remove (remove requires --yes), config get/set (JSON-parsed values, pin/password hashes redacted on read), profile-aware vault resolution (--vault override, else active profile). - Session agent (the chosen unlock model): unix-socket daemon holding unlocked seeds in memory with TTL, 0600 socket; agent start/status/stop, vault unlock (password -> parent seed -> agent, never argv) and vault lock. Seed resolution order: SEEDPASS_MNEMONIC env, then agent. This daemon is the designed enforcement point for the section-9.3 lease/token layer. - Tests cover the full no-env-mnemonic lifecycle: locked error -> unlock with password only -> provision/reveal through the agent -> status -> lock -> locked again. 148 core + 29 CLI tests green. Co-Authored-By: Claude Fable 5 <[email protected]>
10 lines
647 B
TypeScript
10 lines
647 B
TypeScript
export { buildProgram, type ProgramIo } from "./program.js";
|
|
export { openVault, saveVault, type OpenedVault } from "./vaultFile.js";
|
|
export { resolveEntry, entryMetadata, refFor, parseRef, REF_PREFIX } from "./refs.js";
|
|
export { materializeSecret } from "./secrets.js";
|
|
export { execSink, stdinSink, clipboardSink, EXEC_ENV_VAR } from "./sinks.js";
|
|
export { capabilities } from "./capabilities.js";
|
|
export { AppDir, resolveAppDir, INDEX_FILENAME, CONFIG_FILENAME } from "./appDir.js";
|
|
export { loadConfig, saveConfig, defaultConfig, DEFAULT_RELAYS } from "./configFile.js";
|
|
export { AgentDaemon, AgentClient, agentSocketPath } from "./agent.js";
|