Skip to content

feat(cli): airs config — list/get/set/unset/path with source tracking#284

Merged
cdot65 merged 1 commit into
mainfrom
cdot65/feat/config-command
Jul 7, 2026
Merged

feat(cli): airs config — list/get/set/unset/path with source tracking#284
cdot65 merged 1 commit into
mainfrom
cdot65/feat/config-command

Conversation

@cdot65

@cdot65 cdot65 commented Jul 7, 2026

Copy link
Copy Markdown
Owner

Summary

No more hand-editing ~/.prisma-airs/config.json. airs config list shows every key with its effective value and source (env/file/default); set/unset write the file with full Zod validation; secrets are masked everywhere unless --reveal.

Changes

  • src/cli/commands/config.ts (pure logic + registration), wired in program.ts
  • loader.ts: inspectConfig() source tracking + PRISMA_AIRS_CONFIG_PATH override (whole CLI honors it; enables safe testing)
  • Docs: configuration.md gains "Managing config from the CLI"

Testing

  • 30 new tests (TDD, red-first); 720/720 total; lint + tsc + build clean
  • Smoke: set→file written, get respects env>file cascade, invalid set exits 2 with Zod message, unknown key exits 2

Checklist

  • TDD
  • Gates green
  • Docs + changeset (minor)

Closes #272

@cdot65 cdot65 merged commit 05e29a2 into main Jul 7, 2026
4 checks passed
@cdot65 cdot65 deleted the cdot65/feat/config-command branch July 7, 2026 02:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(cli): airs config command group

1 participant