Releases: mdostal/portunus
Release list
v0.26.0
What's Changed
- plan(portunus-petitio-rbac): activate Petitio -- per-agent scoped access control by @mdostal in #98
- plan(portunus-petitio-rbac): resolve open questions by @mdostal in #100
- feat: portunus agent init/status -- one-command onboarding (v0.26.0) by @mdostal in #101
- feat: portunus update check/run -- CLI self-update, security-hardened by @mdostal in #102
- chore: pre-release hygiene -- PII scrub, SECURITY.md/CODE_OF_CONDUCT.md by @mdostal in #103
- Promote: dev -> main by @github-actions[bot] in #99
- chore: reconcile stale epic bookkeeping (provenance-graph, session-vault) by @mdostal in #104
- [01-identity-plumbing] thread Identity through check_injectable() -- zero behavior change by @mdostal in #106
- [02-policy-schema-and-audit-only-evaluation] PolicyRecord.principal + repo scope + audit-only evaluation by @mdostal in #107
- [03-opt-in-enforcement] portunus roles enforce on|off|status -- NotAuthorized by @mdostal in #108
- [04-closeout] portunus-petitio-rbac epic complete -- default-on for new vaults, docs, live proof by @mdostal in #109
- Promote: dev -> main by @github-actions[bot] in #105
Full Changelog: v0.25.2...v0.26.0
v0.25.2
Fix: desktop app icon (and the landing page hero image sharing its source art) had a white-corner artifact from an opaque white background baked into the source art. Clean master source established, full icon set regenerated. See CHANGELOG.md.
v0.25.1
v0.25.0
Git-repo scan targets + source classification
Following up on manual verification that no real leak-scan finding had ever touched this codebase's own history, that manual technique is now built in.
portunus leak-scan config add-repo <path>-- scans a repo's FULL git history (all branches, all commits), not just the working tree- Every finding classified by source:
log/local/git-history, and for the latter, public/private/unknown viagh repo view(never a guess) - Public-repo findings get the loudest treatment anywhere they render -- the single most severity-relevant fact this feature can surface
See CHANGELOG.md for full details.
v0.24.0
Leak visibility across the UI + in-app report view
Following a real-vault dogfooding pass that surfaced genuine leaked secrets (a Google Generative AI key found in 48 locations), the leak-scan feature's findings are now visible everywhere, not just in Settings.
LeakBadge-- an independent "⚠ leak: severity" flag on Console (+ a new "Leaked" facet), Vault Map, Project Explorer, and DetailDrawer (full history + Mark rotated action)- "Leaked in N conversations" counts distinct files, not raw finding count
- In-app report view (Settings' "View report") -- a small custom renderer, no new dependency
Verified against the real production desktop app and real vault before release.
See CHANGELOG.md for full details.
v0.23.1
Container deployment (sidecar / Kubernetes)
Most real installs won't be "download the desktop app" -- pull an image and run it alongside another service.
- New
Dockerfile(CLI + MCP server, non-root, persistent-volume PORTUNUS_HOME, gcloud CLI included) - New
docker-compose.ymlsidecar worked example - README "Running in a container" -- deployment shapes, the persistent-volume hazard, per-backend auth paths (GKE Workload Identity recommended for production k8s)
Deliberately scoped to same-pod/same-host reachability for v1 (the MCP server is stdio-only today) -- not a network-shared broker service, which would need the currently-stub RBAC actually enforced.
See CHANGELOG.md for full details.
v0.23.0
Leak detection across logs/.claude/local files
Detects whether a managed secret's actual value shows up somewhere it shouldn't -- logs, .claude conversation transcripts, shell history, or any other explicitly configured local path. Advisory only, detective not preventive.
portunus leak-scan-- incremental, line-based scanning, never touches a value beyond an in-memory comparison- Escalating severity (warn -> urgent -> critical) as time passes without rotation
- Settings "Leak scan" UI section
- Full MCP automation surface (
portunus_run_leak_scanand friends) -- an agent can trigger a scan, but only over paths a human already configured - New
portunus-vault-auditClaude Code skill + documented cron/launchd scheduling
See CHANGELOG.md for full details.
v0.22.0
Metadata crawl + deploy-docs report
Follow-on to v0.21.0's suggest/confirm workflow -- the "bulk-suggest" work that epic explicitly deferred.
portunus crawl/portunus_crawl_candidatesMCP tool -- discovery bundler (sm_name, group, project, org, repo, vault binding, rotation binding) for references missing metadata. Never a writer, never an LLM caller -- bundles context for an external LLM/human to act on via the existingportunus_suggest_metadata.portunus report-- Markdown vault-state report (org -> project structure, per-reference metadata, explicit Gaps section). A real deploy-docs starting point, independent of crawl.- Settings "Crawl & report" UI -- fetch the crawl bundle (framed honestly as LLM context, never automatic), download the report.
See CHANGELOG.md for full details.
v0.21.0
portunus-vault-trust-and-access (Chain C -- epic complete, 10/10)
Follow-on to v0.20.0. Completes the epic.
- LLM-suggests, human-confirms metadata --
portunus_suggest_metadataMCP tool proposes description/purpose/tags/group into a pending sidecar, never the live field. Confirm applies via the sameretag()a manual edit would use; reject discards without ever touching the live field. - Role/policy schema -- STUB ONLY --
portunus roles set/delete/show+ a new Settings page. Writes genuinely persist, butcheck_injectable()/retag()are byte-identical whether or not any policy exists -- proven directly, not just asserted. Deliberate groundwork for Petitio's future access-level engine. - Settings page -- org/project hierarchy overview + roles config, always visibly labeled "not yet enforced."
- Expanded first-run setup wizard -- explains Portunus, walks through your first vault's backend choice (including a real in-UI trigger for
gcloud auth login), a literally-disabled roles preview, and a first discover pass. Only ever shown once, on a genuinely uninitialized vault. - In-app About/Help page.
Full changelog: https://github.com/mdostal/portunus/blob/main/CHANGELOG.md#0210---2026-08-15
v0.20.0
portunus-vault-trust-and-access (checkpoint 1 of 2)
Checkpoint release -- the metadata-quality + organization half of a larger epic. A stubbed role/policy schema, LLM-suggests/human-confirms metadata workflow, Settings page, expanded setup wizard, and About/Help page are planned as a follow-on release.
orgfield -- an organizational umbrella one level aboveproject, e.g.firefly-eventsspanningffe-cicd/shindig. Fully additive.- Sub-vault navigation -- Vault Map is now a real org -> project drill-down instead of one flat card wall.
- Missing-metadata warning -- a real badge + clickable Metadata facet in Console.
- Custom views -- named, human-curated reference collections (
portunus views create/add/remove/delete/show), locked from day one with a real multi-process-proven store. - Fixed:
repo/source_filesalready worked in the CLI but never reached the UI.
Full changelog: https://github.com/mdostal/portunus/blob/main/CHANGELOG.md#0200---2026-08-15