From fb988454c1cdf25d9db30c2b5357be42305be4d4 Mon Sep 17 00:00:00 2001 From: Ari Date: Mon, 17 Nov 2025 12:55:42 -0500 Subject: [PATCH 01/19] docs: initialize doc-manager and test standard markdown links - Initialize doc-manager configuration (.doc-manager.yml) - Initialize memory system for documentation tracking (767 files) - Configure docs_path to point to docs/ directory - Test convert one Hugo shortcode link to standard markdown - Verify standard markdown links work in Hugo (without .md extension) Generated with Claude Code Co-Authored-By: Claude --- .doc-manager.yml | 8 + .doc-manager/asset-manifest.json | 5 + .doc-manager/memory/doc-conventions.md | 41 ++ .doc-manager/memory/repo-baseline.json | 783 +++++++++++++++++++++++++ docs/_index.md | 2 +- 5 files changed, 838 insertions(+), 1 deletion(-) create mode 100644 .doc-manager.yml create mode 100644 .doc-manager/asset-manifest.json create mode 100644 .doc-manager/memory/doc-conventions.md create mode 100644 .doc-manager/memory/repo-baseline.json diff --git a/.doc-manager.yml b/.doc-manager.yml new file mode 100644 index 00000000..8da7f594 --- /dev/null +++ b/.doc-manager.yml @@ -0,0 +1,8 @@ +platform: hugo +exclude: [] +sources: [] +docs_path: docs +metadata: + language: Go + created: '2025-11-17T12:39:34.080505' + version: 1.0.0 diff --git a/.doc-manager/asset-manifest.json b/.doc-manager/asset-manifest.json new file mode 100644 index 00000000..56fbbfb3 --- /dev/null +++ b/.doc-manager/asset-manifest.json @@ -0,0 +1,5 @@ +{ + "assets": [], + "created_at": "2025-11-17T12:40:05.357953", + "last_updated": "2025-11-17T12:40:05.357972" +} \ No newline at end of file diff --git a/.doc-manager/memory/doc-conventions.md b/.doc-manager/memory/doc-conventions.md new file mode 100644 index 00000000..008a1008 --- /dev/null +++ b/.doc-manager/memory/doc-conventions.md @@ -0,0 +1,41 @@ +# Documentation Conventions + +## Style Guide + +### Writing Style +- Use second person ("you") for user-facing documentation +- Use active voice for instructions +- Keep sentences concise and clear + +### Formatting +- Use sentence case for headings +- Use backticks for inline code: `code` +- Use triple backticks for code blocks with language specified + +### Terminology +- Be consistent with technical terms +- Define acronyms on first use +- Use the project's preferred naming conventions + +## Structure + +### Document Organization +- Start with a clear introduction +- Use hierarchical headings (H1 → H2 → H3) +- Include a table of contents for long documents + +### Code Examples +- Provide complete, runnable examples +- Include expected output +- Add comments for clarity + +## Quality Standards + +- All images must have descriptive alt text +- All links must be valid and up-to-date +- All code examples must be tested and working +- Documentation must be kept in sync with code changes + +--- + +*This file can be customized to match your project's documentation standards.* diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json new file mode 100644 index 00000000..50d372c7 --- /dev/null +++ b/.doc-manager/memory/repo-baseline.json @@ -0,0 +1,783 @@ +{ + "repo_name": "pass-cli", + "description": "Repository for pass-cli", + "language": "Go", + "docs_exist": true, + "docs_path": "docs", + "metadata": { + "git_commit": null, + "git_branch": null + }, + "timestamp": "2025-11-17T12:40:05.250862", + "version": "1.0.0", + "file_count": 767, + "files": { + ".claude/commands/speckit.analyze.md": "ca5debb183d8ad1b012ddcec3ca66604506e47403c7ed3d4487f726dccec6253", + ".claude/commands/speckit.archive.md": "4444744e06955088a8c3fc6781e18dd916d04bd0dae572475ecfe304b59c3948", + ".claude/commands/speckit.checklist.md": "460757d3345f45551b381fb735aba98fc1eaffda3a6a505b6420cca796b789b0", + ".claude/commands/speckit.clarify.md": "ccc9f6fdf264079a4580561a9d27517e1dbb58af985cbab792bb5c07df8566c9", + ".claude/commands/speckit.constitution.md": "5d941d150aa5aa8f2753741271c8fad687efa0b898bddfca04fe9c1ab94089c4", + ".claude/commands/speckit.implement.md": "6331fa8b1dc4079b16b69b09554dab62f05f834ccbb03c3343516df1b3ed8c08", + ".claude/commands/speckit.plan.md": "0695f2665c94425e346a8c7b2592736fbe17b95d4f774e7dd57d8597da648c6d", + ".claude/commands/speckit.specify.md": "9aeaa502dfdbb50ce9066b3d272b90071458167a8c1c434c804e8ce70b35748e", + ".claude/commands/speckit.tasks.md": "7b8611461e94a3c0eba80a8fa92938cb08fd78f45eaae9979cf51d57bbf70664", + ".claude/commands/speckit.update.md": "e5b9a904059424d7e72a5cdb25c00ad94b5bb7caedce3bd2c47593310cf31d40", + ".claude/settings.local.json": "6e3c8aa31f05f1876f95d085e018a1b8ebe0dd914f62caea0e74145b448a1726", + ".claude/skills/documentation-manager/assets/example_asset.txt": "34ddcc92e035e573bbe2826fa8bb0932811d47f48fc9bda237b52e220603ed10", + ".claude/skills/documentation-manager/references/api_reference.md": "23b3a73b37eb40c8f29a63f15031dfdeb4718e0b61c6d2510af703a8be8b7509", + ".claude/skills/documentation-manager/references/quality-criteria.md": "fef17a7cfbca804c5f30804228eb5e7993184c7dd17a975f1834bbad6e278087", + ".claude/skills/documentation-manager/scripts/example.py": "7e0862e73760c523381959536bcff95020328f26181cd6a605bee2456bd8f643", + ".claude/skills/documentation-manager/SKILL.md": "9a16dc9c3c19fcce57a97cf3cd2bbb99b268ab4fe5349182386dd69460513458", + ".claude/skills/mcp-builder/LICENSE.txt": "58d1e17ffe5109a7ae296caafcadfdbe6a7d176f0bc4ab01e12a689b0499d8bd", + ".claude/skills/mcp-builder/reference/evaluation.md": "8c99479f8a2d22a636c38e274537aac3610879e26f34e0709825077c4576f427", + ".claude/skills/mcp-builder/reference/mcp_best_practices.md": "3bdf013379bdd3c198baccd0f183441c710fc7cae07ba4c6f8f8048276519688", + ".claude/skills/mcp-builder/reference/node_mcp_server.md": "40b03e9c07463d5db524c1f5140ef60713fdd911c2f4386f89e0b94d43b8764e", + ".claude/skills/mcp-builder/reference/python_mcp_server.md": "4e6db48188f44ff4eb707f50b8d273d5d18af4b88d326f7a26f03a405064bc0b", + ".claude/skills/mcp-builder/scripts/connections.py": "9403668a2041568772082a8b334122c1f88daf0541fb393af4522d0094a47a6e", + ".claude/skills/mcp-builder/scripts/evaluation.py": "49ed1d17cdce5da101b210197740713f49b935c29d4f339542a14b132658e6f7", + ".claude/skills/mcp-builder/scripts/example_evaluation.xml": "9272b348ddcc4b06ba562367ccd0770e018158c0068ac5116d5e34aaeff8777a", + ".claude/skills/mcp-builder/scripts/requirements.txt": "d5d7558b2368ecea9dfeed7d1fbc71ee9e0750bebd1282faa527d528a344c3c7", + ".claude/skills/mcp-builder/SKILL.md": "b1010e90adcb8fd6bf57640df34ab6454fbf7e4216e150a4620f7caccadc4e63", + ".claude/skills/skill-creator/LICENSE.txt": "58d1e17ffe5109a7ae296caafcadfdbe6a7d176f0bc4ab01e12a689b0499d8bd", + ".claude/skills/skill-creator/scripts/init_skill.py": "62bab945e4a857aa953bcc5f480106a5a903504285b0596d08af5da9c352a4b3", + ".claude/skills/skill-creator/scripts/package_skill.py": "692525dd8096aee51730ab142fb2605894a6f1a4135bcffebbf4f8ed3cf8715e", + ".claude/skills/skill-creator/scripts/quick_validate.py": "41647b79d15e7e51b944d56843e9f87a33f4c66e64ded5964d1f95bad2fe634a", + ".claude/skills/skill-creator/SKILL.md": "8c0ce23bb87be91f5b0853c2e9815617c3858b63acdddfe5da47d2c2d3a60816", + ".claude/skills/speckit/assets/agent-file-template.md": "55ed438c2e861444ef22f45fe5238f3ebf0dc1cb6e53067d7232fbbf4ce82892", + ".claude/skills/speckit/assets/checklist-template.md": "0c8974d9d36136935d257354a874aff69fcb4931a2c5ae586a31f8bff59ecd54", + ".claude/skills/speckit/assets/design-improvements-template.md": "7ec00cf955f3d0733e81c22a53e1ec132849f275c614f600a516abdd4273cf56", + ".claude/skills/speckit/assets/plan-template.md": "d7e9a5513670d886f6ec9e2d9ae48343ebc4fb4567459f438fea6b7e734ab7cb", + ".claude/skills/speckit/assets/spec-template.md": "bd529dda1cccaaee34fce4355100c5bfcf56d3811698c6aa7dbab5f6b5476c60", + ".claude/skills/speckit/assets/tasks-template.md": "860e9ed647b20c45329b7548041efd10c42d7233eb6da22a92c0a886e0ef15a6", + ".claude/skills/speckit/memory/constitution.md": "fff35c4009a8fc212bbb288e32b8c22d0607330af40aaeb0b6816711fb48ac67", + ".claude/skills/speckit/references/speckit.analyze.md": "d2393b2634b6bd02d324bed4a7b14c69fd62c18132d28ea282095b51a7ce36d7", + ".claude/skills/speckit/references/speckit.archive.md": "c49d8b94e2e668efd33f47df6ed57c309a6a4f4ff0b6f90e0d669289948bd0d3", + ".claude/skills/speckit/references/speckit.checklist.md": "fa209c97d18cf8e08993f7010b545c83bc86fb105800ca8ac17d9a76b7a72a30", + ".claude/skills/speckit/references/speckit.clarify.md": "124c01ccf65cbc1500cccac15e9c784f8dd0da0b3ff7cac7ddaad25f2254fdaa", + ".claude/skills/speckit/references/speckit.constitution.md": "dd3da04f8001fd64065e59102b05ca53419c988e727bb50b8b4d14085bc6f700", + ".claude/skills/speckit/references/speckit.di.md": "c375b9e8c9c22ddbefc306ba53e3b25266579d193624540e640979e09d519fc7", + ".claude/skills/speckit/references/speckit.implement.md": "d884ff8eee2269428a8d8a625ed9079c411f3a223f9050b36db6dcdf29887dc2", + ".claude/skills/speckit/references/speckit.plan.md": "c509780884509d571659c444057fd9028c27d1c6754a64620026e8b1b8ac9844", + ".claude/skills/speckit/references/speckit.specify.md": "ed39cc6fea65fd6df5969142349b033e98c110203e680161eb499cbd789f3180", + ".claude/skills/speckit/references/speckit.tasks.md": "b729b88e0cd7917417bcae185276d58825345cca8ed15513d37bae327601facf", + ".claude/skills/speckit/references/speckit.update.md": "e724ad74269ae7feebe9334746d337bdf58512ef74d97ee844c3e6698375b0a9", + ".claude/skills/speckit/scripts/archive-specs.sh": "ac65326fafced095713144f9bead600d2758e1249f6d107762e69dc6faa6eef0", + ".claude/skills/speckit/scripts/check-prerequisites.sh": "5101cde0a41d0138e3fb976d352f1225d905d79200ac5e270fb1ad84c92e5914", + ".claude/skills/speckit/scripts/common.sh": "ca7cf6b56f09e27e9b33f306c7fa33bc955ebf3515c2d3a8b887b94bc3cce4b9", + ".claude/skills/speckit/scripts/create-new-feature.sh": "4c2dd1cfb54cc5dda7d641a08f7bcb4d573edbdcc4ccc14c983c4984e13de481", + ".claude/skills/speckit/scripts/setup-plan.sh": "0a96c6ae676f47c4d4d52f4549b825a17a5a90d9557e3f6aed417d201a2454df", + ".claude/skills/speckit/scripts/update-agent-context.sh": "5a80e47df9a5a2f4cdeca6c9e5d7fe73c03c87dd7387899672c229adc72bbdcc", + ".claude/skills/speckit/SKILL.md": "89088c78ed5c47cf7b79efaaf089dd2510376020f7aca6ec4e9df2927cbfb360", + ".doc-manager.yml": "3d30c5d7c8498933ee72d33945a366cce24cc0d8b33609bd7b4181dc4cebe59b", + ".github/dependabot.yml": "578b858b08141f08e00a144c35b208f32075d2f40305111a5d970e8d6ac9ef65", + ".github/workflows/ci.yml": "081a8464d550c347fa4af32c4666490d744aad2d9d945f36019c353a26f87a56", + ".github/workflows/docs-validation.yml": "259dff44c43e69dfa78cc3624bdfc956d5f1b895b2798e45e1677d1be86ba2f7", + ".github/workflows/pages.yml": "26a69d51de2e00b38fece64609190cbd9024732789542dd71e730acc783b9962", + ".github/workflows/pr-validation.yml": "7550573b5946b83748efd0294c7e2f076979a14f4a9a4b3adfa474bd5ba14d8f", + ".github/workflows/release.yml": "89d248b668e4d1c151b7c0b3cb04e8e311fb9f75fe4b066028749f71b9ec0cbb", + ".github/workflows/security-scan.yml": "be292d32d6f223052450ddf86a0a935002f8e41e29a5d46f5f05da39fb6ffea0", + ".gitignore": "dfa96d75bf0c48313b8567ae2313fef553925bd38ba9d73f47dd926c7aa5326d", + ".goreleaser.yml": "180c963b45edfebc6e6a1218e00e33953ec850270f4703595956ec9a2d324997", + ".markdownlint.json": "9b4b2ad4dd10efd42a4af14c5e6f0675b22ccc3eedd378d9075162cd692549ae", + ".mcp.json": "13aaeeca4053a1b4706848549455ff7ee847748b409c3ffa3487de2b0ee22079", + ".serena/.gitignore": "56326d749401841d23e69493167468b16e53a4b55837da1d5352a8c697c7599b", + ".serena/cache/go/document_symbols_cache_v23-06-25.pkl": "18390cb59f228ed8d6f7e295f9700fe828bb94b3ebd20a25069f3eabbbe59519", + ".serena/memories/automatic-usage-tracking-design.md": "84fc68110ff78b95aebd9f0be39bfbce0c28a6df1a4f3e1a18686dbb6d96877a", + ".serena/memories/code_structure_and_conventions.md": "56c079aa07067f44b71f83b862a15e9393b3b592bab7067563b99b28951ee762", + ".serena/memories/development_guidelines.md": "36272713d1e06188ca3373865cf61348678e7f9d10054bb18d6918e5de34c3bc", + ".serena/memories/lipgloss-place-whitespace-background.md": "be840784644054601f19fb3ea139f76b9fd5d6489f6c5b017cf6f6d1da257827", + ".serena/memories/project-strategy-action-plan.md": "167a93a825e17dc1f6a95ecc1aaa05ea636af1062ef75efb45af237d4efcdf86", + ".serena/memories/project-strategy-and-action-plan.md": "a54b79de5adf77bf51e04de900f761d4870821eeaeeef8167e7aeb9f54d2df15", + ".serena/memories/project_overview.md": "a8e619c54a63b9c4eb75418eb85a142304b6e495432382dc02ab3b3992ba0749", + ".serena/memories/script-friendly-output-design.md": "362accd68746a69aeed05aef5c7996c532a81e63f352fb62b25ec6471e8ce2b2", + ".serena/memories/suggested_commands.md": "cf7c09bab039099b16cd591e10d7f146e4b0948690f1f236e976bead8a6b5866", + ".serena/memories/task_completion_checklist.md": "abf09a803bdcc37c6f5f122fa1297ff01f82800a38dc88bad593fc409c476f2e", + ".serena/memories/tech_stack.md": "abb0d95b75f5186ca9910fab8f5d6498883f6a6a84df269a66ae15fd4e6ea624", + ".serena/memories/tview-fresh-requirements-research.md": "c2e5b14b091dd392d6a0234a71d83d58a43caedaf186765bde1275756d74c61d", + ".serena/project.yml": "b854d17b833e9ce80f7bddc4d7b7eaf79ff1af396ca719b5a0b2770071a10278", + ".specify/memory/constitution.md": "fff35c4009a8fc212bbb288e32b8c22d0607330af40aaeb0b6816711fb48ac67", + ".specify/scripts/bash/archive-specs.sh": "ac65326fafced095713144f9bead600d2758e1249f6d107762e69dc6faa6eef0", + ".specify/scripts/bash/check-prerequisites.sh": "5101cde0a41d0138e3fb976d352f1225d905d79200ac5e270fb1ad84c92e5914", + ".specify/scripts/bash/common.sh": "ca7cf6b56f09e27e9b33f306c7fa33bc955ebf3515c2d3a8b887b94bc3cce4b9", + ".specify/scripts/bash/create-new-feature.sh": "4c2dd1cfb54cc5dda7d641a08f7bcb4d573edbdcc4ccc14c983c4984e13de481", + ".specify/scripts/bash/setup-plan.sh": "0a96c6ae676f47c4d4d52f4549b825a17a5a90d9557e3f6aed417d201a2454df", + ".specify/scripts/bash/update-agent-context.sh": "5a80e47df9a5a2f4cdeca6c9e5d7fe73c03c87dd7387899672c229adc72bbdcc", + ".specify/scripts/powershell/archive-specs.ps1": "36fda32fbc128f203402349fcf280f488da4b1f2cbab3aad89b5d4a0bfedb4ec", + ".specify/scripts/powershell/check-prerequisites.ps1": "a525badbfc70066867acbe85cc9c1c724c079804a3835e1b9e0bd2fc45d04a11", + ".specify/scripts/powershell/common.ps1": "74df56db60c189ad9a2b2f70c85e52717c6f4040fc4b7a91fd76d176b2884b69", + ".specify/scripts/powershell/create-new-feature.ps1": "30cbce7b16dfb3f57df1ccecd259e943f3a06bc428beba692a4483f9c84e0464", + ".specify/scripts/powershell/setup-plan.ps1": "2b6889f98b6843b768106d80598162abc360964c6405c947656f236d5f410a48", + ".specify/scripts/powershell/update-agent-context.ps1": "e61ea8eff0ed12bf93c0c3acfedbe21af89fbff7c4258edf832328e06068c0f3", + ".specify/templates/agent-file-template.md": "7ce716a6041623208d10628900ee35d31eabd9f4177bcd525c28549d8ff3ccdd", + ".specify/templates/checklist-template.md": "78d0ff5f1330578b274ae2b0bd53b7ed86d7c3de66dbbba1184ac0cabcc3dbb4", + ".specify/templates/plan-template.md": "c5152cff12712255f9e7098b3c419fc95ebffa4cb8cf19635e1428baeded0653", + ".specify/templates/spec-template.md": "bdb3cb6d7562f9429c00373d221f3d8a377d2ab4132afdaed36d39d83e6f2f63", + ".specify/templates/tasks-template.md": "ad6eaae8f6a0569d28f60a9c1c0657f1e088b76a2859b46b18f2cef4588d682d", + "CHANGELOG.md": "d72447f51be5bf54e38a8802bf7db155b85c877555e7e74f07e117b99b91c638", + "CLAUDE.md": "2bcc51fedb86dc1c1b0b303dffade31cb68e8727403a94060d7631b5cb656116", + "cmd/add.go": "5bb7d5bbee88304fa8cdfe3c268baedd8805610030aa98740575fdb11983f11e", + "cmd/change_password.go": "8355659b5a9bf4693d81092b03ad7d936c6043207b97c4dcea02e7cbf0386e2f", + "cmd/config.go": "ea9810cf6f4dbcc93ffc53bfb34ce2dcb4d93a90e48b230ade4036c728cd1fad", + "cmd/delete.go": "135188b75f1360eefcc9473fe25fa252a2abff31a3a0247bed900763c589b480", + "cmd/doctor.go": "966dd049ce155ede7a8a9cd740fb9253bb1e05508a0d6417cd44a81845deb080", + "cmd/generate.go": "2e805f671aa139319aab02e4da538ad2dd87c2b91f0326dc31f5c8129953024b", + "cmd/get.go": "73613e26a3f32cd9c47eca02061dced441b5c462770d6e7a940d3a1d5986d321", + "cmd/helpers.go": "da94ca7963f179f16bc0bb0f9ea108868cde8973b6f77635b4bae8742a35ad79", + "cmd/init.go": "a17dbd98398e225d3071d1ee77c408c0fdce55899210a73553cead8d76729f05", + "cmd/keychain.go": "039c26a58d7d04c71ecdb7f257bc20e61b137697ce453026b8fe6fef411c43bb", + "cmd/keychain_enable.go": "4fe42263bf198f27aeb672d5b5e4ab7e61d0ab27182319dfb0597e46d0d1e83b", + "cmd/keychain_status.go": "d407c0e680323c5003dcddbd25f1ea4baa26497ff8281aa69b64dd1ab3ebd83b", + "cmd/list.go": "89da75775a8915a2150f4c6663dc12ae0677e01d116301cfcadfef7390cabade", + "cmd/root.go": "0098285b3013b3ac2978f8eed91a799d1af689693dc397479ba1e194db25a253", + "cmd/root_test.go": "0bd1ff55fb91c2fdbbe40bf9bcc384176dfa2d30b7a672c9ed91234817bca143", + "cmd/tui/app.go": "43eeb51b0b40a715b8476c0e97e4bc822d70791f5c857bff8c5d7354c058c457", + "cmd/tui/components/detail.go": "db5d898aba779de1ad007aa44ede9c1e0715e873ab6e384b4c042420141d2075", + "cmd/tui/components/detail_test.go": "6e75300a194cd7a3cfc73f7a435fd198fb41b11936388c0bef87b25135f83ab6", + "cmd/tui/components/forms.go": "f360218d34b6c9951a6ab3de2529089bb8cceb039e7559a0d0cc7d7877e04261", + "cmd/tui/components/forms_password_toggle_test.go": "008104b1480a798a3bc737d33f4209a1a542f759238338a2599f02286ca36959", + "cmd/tui/components/sidebar.go": "f7991b7eddaa2b9e3c75ae80f61cde53f1518bafa9621397ec7924872f79893e", + "cmd/tui/components/sidebar_test.go": "f2426673ff64f2a8ece67f91fffec9107120f101e9337f6397515e933e4276c3", + "cmd/tui/components/statusbar.go": "1921a2c7b0b34122e4caf4514839c47dcc6438d6d863b07580db17cef900bfaf", + "cmd/tui/components/table.go": "285ef9846cf032efdb8b4b1c1d4199d0d3af0864a8d02c5a5fcfa484becdbf9e", + "cmd/tui/components/table_test.go": "1abc2811e89584d919539de80aaa8a7d57aeef200dac899634d3f3eebcfefc43", + "cmd/tui/events/focus.go": "e2d6c4f035e4981646a9bc28a2b5fa097dc6b18d981ff860a40429033f6f7f79", + "cmd/tui/events/handlers.go": "9e7ef5f9b8ffb2ed0ee33bfc728d88b92b2685208d08c8892e4d15162aae5863", + "cmd/tui/layout/manager.go": "0e31721268f04f7e06854fba0e9b42c4ee8e727860f21173b2212da53bd7931c", + "cmd/tui/layout/manager_test.go": "2624de8f452c27f959feb5bdf956e5f21de7f694960beacf9d2e71fc8e968950", + "cmd/tui/layout/pages.go": "21ee8b0987cd7dab996118281d47bc280b2a5e204ef523d1944fb368a9f8511a", + "cmd/tui/layout/pages_test.go": "a3fa6742e3cfd48d0303f2c344d0f2ae46a217e01f6c7ac864f512165ab30027", + "cmd/tui/main.go": "ee842e04c166c95c71427f31fb379d5c95a41feaee12f82bee1e1cf9b5a38c3a", + "cmd/tui/models/navigation.go": "88e5a7903d63eea25200be42ee3e1967c46eb18e9519d4bff1751d58ab9be1b6", + "cmd/tui/models/search.go": "baf4867219d8f1a6d2851a25240ef00de14a961ece1ef91693f0afe9204a3b99", + "cmd/tui/models/search_test.go": "0b54b765cf2728c75c2c379ca2a22b07da21d6d810597b1c6e4aa62bb5e7e4ad", + "cmd/tui/models/state.go": "2dcff4b9218d00025b0ee7b3e2f876dd21b14ce34eef6f9ba77d4012e1e2ec59", + "cmd/tui/models/state_test.go": "c394174a27ba5fc1649715cbfc5f0ca2d5b0ad64813298764b0e8da247c5c64c", + "cmd/tui/styles/theme.go": "5713de3928333c8161eabebd093f61cd8d1a92c504c10913f2fbdae07444e398", + "cmd/tui.go": "2c598900b4cc5be38f699ea21d13f18f1f296b181cce127f3dbd8eb5f9a1229d", + "cmd/update.go": "044717de710142b86d3d8d53c77a88d1723ff87520c2efda8876f4d1fb0fc604", + "cmd/usage.go": "8c8b38a6706e5d6b85f468170ffeaea4e17433164d0e30cae33402af906cac3f", + "cmd/vault.go": "a5774e7025de9475854a364e0593f31fdad41d29eff8e36396d1b9d6d3a415dd", + "cmd/vault_backup.go": "588881f8dad1c7a1c71cb91907ccc70cad951f417c001f46d4fc9c49e16b22e9", + "cmd/vault_backup_create.go": "4999983a3efd5f74ce89c576935a5ce5ddfac76f0aa25e2bf8ee73446bdf123c", + "cmd/vault_backup_info.go": "a808402b4766bd95bdc84d5c08b0700f19d1faa8b1ce006ddd1758fad40efaf4", + "cmd/vault_backup_restore.go": "df31f93339b74155363f0faa119c2e6ed1baeda50641d5f28c0a73944ccd454e", + "cmd/vault_remove.go": "9cb61bb2b409acfc266a51e28cd1002d7f52338a4798ddff83da1987025ea612", + "cmd/verify_audit.go": "013727a6064c86cb0e7136fbc4ac976a7738d3bd200ae9d6533152206fb675a2", + "cmd/version.go": "ccbe76818fdf4173438824a2976bf3a82f912767f752915453dd9a38d5eaa10d", + "CONTRIBUTING.md": "1e4e9c95ebddb6b6fc7ef3fc9bbf1f634c9908230d6663101132d5a83d430c5b", + "coverage.out": "73b3001a5556ddd92fbd0eefe4d149cf1c3a6ffe3679c31a966d6a7802940fe6", + "docs/01-getting-started/manual-install.md": "029c0ed2e3397cd6c89bea4147f5a58aec1171ef42fd7f33aae14c42035bfa8e", + "docs/01-getting-started/quick-install.md": "7d0717a7655587bde7cc0c4ceea3d8059c1f77971929b3021bd8a4e2266467fb", + "docs/01-getting-started/quick-start.md": "92fda3d3d6b3284cb0ab9bb4a701b6e69d1cc395d9aa164b41c74a80124ecda2", + "docs/01-getting-started/uninstall.md": "20d9203eb54f9ebb8a607c5c1042b720e444932db149d185cbb6a45e2761b018", + "docs/01-getting-started/_index.md": "de2189bcd0f4b3c680e61e62e5adc8ea52036c02ad6ad098ca0b21057ee615ea", + "docs/02-guides/backup-restore.md": "eb3d5141b1fd5994536eda99885a9913a972826c379546d953d7b659992b48b8", + "docs/02-guides/basic-workflows.md": "ba6679e239bd4d7b370d020e2af46e8f0a5248075f314d13dd20d67fc059ae00", + "docs/02-guides/keychain-setup.md": "b35e82c4588b3a9a4fd42506f73469936761a76c5a16a6cd18d2bbd5fc4bbce7", + "docs/02-guides/recovery-phrase.md": "8b44a2e6556b800be946c5ccefb5346d64de666e06d6718c18e64f4e0895217f", + "docs/02-guides/scripting-guide.md": "30aa8bac58d3c786fb0c87d487b4304011d54a57ee7703a5f18320c7abbfe85b", + "docs/02-guides/tui-guide.md": "6502966297a2482502f468c88c6cd29f549f933b501dbd2fadce23fd9795f84c", + "docs/02-guides/usage-tracking.md": "7d6df897309defc8e135b1184666b47e89f319645667ecd61f50303ab22fff4d", + "docs/02-guides/_index.md": "91f59d05c14b3966962a912db4b1ed192f41c844bc8144fddd5f4d4dda71ba95", + "docs/03-reference/command-reference.md": "13842f608cd40e5ca1beaec1f03c159153bbf8db83fe3b34ef0e8385c4b20b81", + "docs/03-reference/configuration.md": "2ed273e7b379c5eeeebd362347232bc05ad34a584ba277770b66b39bc48c9106", + "docs/03-reference/known-limitations.md": "f19cb3444df9025139c5396516c5080a07013f3f379bd88311714139c5710a78", + "docs/03-reference/migration.md": "7fa057aa73774be8b41a6be76602a3c074605672f7ea941336330185c342fb73", + "docs/03-reference/security-architecture.md": "9faeac32bf1aa6e0ab31d91a099dcfe6162024d048f107b4c1f6d174a0503923", + "docs/03-reference/_index.md": "af538064b2348f5845ce4f3d57d963fc203af87f77d74b06fd97b11de3f19481", + "docs/04-troubleshooting/faq.md": "ca04fcdc2d0e69aff9504ca9eb583094968fad331ebfaac949c00633dd2950e4", + "docs/04-troubleshooting/installation.md": "4071de21719f8335d90e5d444ab3b713e0ebd1b33ec3761f404f60b7a1188a28", + "docs/04-troubleshooting/keychain.md": "c0d1ee5745b4c2e6014c0f38d5974f48dcb2e24e162f93c7fd693eec160676b5", + "docs/04-troubleshooting/tui.md": "91563b6c2271a3cd7013fbd4fa249843c5f87169bbf8e485462ed682ec4407e1", + "docs/04-troubleshooting/vault.md": "1f6a65a150286980c98390880d93e263ac66ca9593fba573b05c13923e7d1006", + "docs/04-troubleshooting/_index.md": "5f58989a3226e1997eb03da1259ba011f19b36f71101d8904c2df75d9f492172", + "docs/05-operations/health-checks.md": "53fdd696e0a4e48b23cd892a356725329c29fd670271f96bf54521145821cf5e", + "docs/05-operations/security-operations.md": "5135a9d5915ad3ef7d8cdcff993e064bba5faad30c36b6bdf528ff73ac0523a0", + "docs/05-operations/_index.md": "6c1ecf8cbcc6af3e81e9508a780ad47900147bb82072c9acc7104a6bd8183af7", + "docs/06-development/branch-workflow.md": "fcb59533376d2b984219a21979826aca76f5686f0b389558e3664ac5b0ad6c28", + "docs/06-development/ci-cd.md": "3c4b459e6331f9a08df2294903bdb6e95bcebd705e4ff0232e2d1d004b5feff6", + "docs/06-development/contributing.md": "260b766190a278eec291e19d263de5143b404e367496fb30cd9d4ea43a958701", + "docs/06-development/documentation-lifecycle.md": "f5a1f33000052e05f8025ab322d8e4f626b23b3952c4700e57c6b05f7b7556a9", + "docs/06-development/homebrew.md": "5e928d169452297376f85146cd3299793ba3b22d9cc442a2107c839bf2b5b238", + "docs/06-development/release.md": "dc57929a4ca73934676d2d0ad1ff71c926596ab84d1314d6a0d64aec5047e4b1", + "docs/06-development/scoop.md": "4fa78cd7f6b551f93f4e8dd950624b7813e16d1cab46c9039baa5783076b97ea", + "docs/06-development/_index.md": "55060da9de334553fca48d40e7142169cfa2c3fee1e8bf5451b2b19eca3df2bd", + "docs/README.md": "66dc79a3be64458397c445b9451445fabf73a5ae3a28d009a196bade1a8619a5", + "docs/_index.md": "49ca55e3139a7db6022a9d3f04c93430941461ecffe62ab32c5a41b495a3a3e4", + "docsite/.hugo_build.lock": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/go.mod": "3a00b8ca7f8c1f0dbc8059d602ad62f6270f83b632d9ce6146b39ae0f82cafc7", + "docsite/go.sum": "f77fa4d8c436f59bf47fced4c59314ec7404d8c214e4f08c30762d2654b7d258", + "docsite/hugo.yaml": "ab82f93b5e6804fdcefa4d9700d03cef5eb9fe8fb54769556f9fe92e11e4caca", + "docsite/themes/book/.github/workflows/deploy.yml": "cfa4fcd37dbc7df4c4c0d65e513874eabc64e0d1809746d7e7a23be6d338abd1", + "docsite/themes/book/.github/workflows/main.yml": "f847e8de552fdcbc5980f818e9eedde244535c2fd78d41de26ebca3b5b037afd", + "docsite/themes/book/.gitignore": "48eed25676bcfe953a601341212eb996723c0753e2a03835c9553b986180290f", + "docsite/themes/book/archetypes/docs.md": "a65a2f7cae92feb2daa0b252acaffd3084762a76b31fbd4838c89d59a9f40968", + "docsite/themes/book/archetypes/posts.md": "fe2c2def8d177772ab70c114ae9adfbd7db86e7362c34e4749a071178509db93", + "docsite/themes/book/assets/book.scss": "76c26d850ee93321f0ddd60480514d79709289138109cb3aa2a5e918c9e6fab0", + "docsite/themes/book/assets/clipboard.js": "0598a70cdb89cb37c9530f4c197ea94ed91b4db471153067d249863cf38d78ba", + "docsite/themes/book/assets/icons/backward.svg": "5a473b4231439e6a36d0981ff96141aaf9e6f0564543d4392aad149cb5d73e89", + "docsite/themes/book/assets/icons/calendar.svg": "8384cb803773b19b7fbe54b615fb65e1ccc686c2c350eb0b209dcafc97849444", + "docsite/themes/book/assets/icons/chevron-right.svg": "22798576ff2dcf0fb8a8a668122531b618d80941fe6a2be92b952dc289a01e27", + "docsite/themes/book/assets/icons/edit.svg": "69d2cd4b25549da2a4846e89b1d6173b0bbdc7f1dd170edb422f5741fdfd896c", + "docsite/themes/book/assets/icons/forward.svg": "6866634762f559a251a05e0b4656fcaa8f86a7f272bc092ce9e28b399e0e4018", + "docsite/themes/book/assets/icons/menu.svg": "d43f4adc5eeda40277dc21281b737709a55200f147760c538ec74ecabcc5f772", + "docsite/themes/book/assets/icons/toc.svg": "001e053bfb2982b33fd7930f84bffd82771cd461a61c2cabf927271488af48bf", + "docsite/themes/book/assets/icons/translate.svg": "a594c54e0797d14249d0f6e8a4cb385d441918f1628413a30e5b38934819aec5", + "docsite/themes/book/assets/katex.json": "adc407ed122949a003e507dc0e15fcd26802af9ceb330264ef4bf0ff698c3078", + "docsite/themes/book/assets/manifest.json": "454a572c0c3cde7bd954fe72e4a80011a5a0697aa7125cf740b58400ce3dfe3f", + "docsite/themes/book/assets/menu-reset.js": "641d27735a54d73a0ecf5c2fc18f43302838eea7f1523bd0ba7210d7f8b95575", + "docsite/themes/book/assets/mermaid.json": "5285f9e4376505401d6839479b9c0ddf271050a1e2587d5b54ced431d589bdcc", + "docsite/themes/book/assets/normalize.css": "b9ebc7b15fb70993a90fb61530c0744dc14c6099d7343cd794cab3fd5f11ca40", + "docsite/themes/book/assets/plugins/_numbered.scss": "7fd52f26fa5476bec6b33a6459f0ecc02e2ad4647ba0bc23ecf27fa2b3d0b60e", + "docsite/themes/book/assets/plugins/_scrollbars.scss": "e185f32112d447c389eb5a9f243f2aedc20c462a4044bdb7341809e720746189", + "docsite/themes/book/assets/search-data.json": "e15f357776db5d9f6c3a444116e9c05917fda05cf8c5a481434a06fb33b0df6b", + "docsite/themes/book/assets/search.js": "268f431b4dbb0c39957d00c35935cfec888d96bbb121ecf4eba70ac4ab02fb8f", + "docsite/themes/book/assets/sw-register.js": "3774e8df07c7cd59fb061f503a1982345b33f0724270a99eb996e0f184bbb4ef", + "docsite/themes/book/assets/sw.js": "a28d4ccd640f6745c865e83ffa1eed1e2b7fec2278bb708657051b6f86066667", + "docsite/themes/book/assets/_custom.scss": "c25b66ef58149469bd5095f3bfdbaf7a736f3514a89050d6ae80a68beccba0b9", + "docsite/themes/book/assets/_defaults.scss": "544a9892b3701eaf01aac0ffb2cec83ac23c6324029cea6c7bf67b37c5ab2260", + "docsite/themes/book/assets/_fonts.scss": "ad2cfe957503656c4e25a99cb14407fdc32779997affee10f28505dda9edbe8b", + "docsite/themes/book/assets/_main.scss": "f1ece01c95380b2244f40c7f94748c8d11b3a8ad4eae0424edda9567dc16755c", + "docsite/themes/book/assets/_markdown.scss": "37ae2aed2529c50464116e5027fdad3c77625f7c2fa7f9f9bed96b346f973194", + "docsite/themes/book/assets/_print.scss": "f97ead54451df2e97c094ec5056d3cb041d34ce9ea9e20ddf963b2152090b358", + "docsite/themes/book/assets/_shortcodes.scss": "053312c9462d0e203dbf75b915c9e48f1f66d79b877f70158127c597973654cf", + "docsite/themes/book/assets/_utils.scss": "6c81cce59d03ceff9db160731877416dbf9861358b78335be504cc2be7de56fa", + "docsite/themes/book/assets/_variables.scss": "082ce753ba257bdc4d87841c19126d7c24ae2bfcf4221c03b9d5c2708059f4c0", + "docsite/themes/book/exampleSite/assets/asciinema-627097.cast": "52d2135f8a48628ea8407ce1c8257f6ebf83fa910e449738a4ee094a25a10c88", + "docsite/themes/book/exampleSite/assets/book-starter.cast": "72f957d4e6edfa4bb274dac6a0341fe9536bb6a8313d48d02918f3cd94001708", + "docsite/themes/book/exampleSite/assets/placeholder.svg": "4bee845857320fd06248dd2fe06e5fffcb1d52f0093f939c0c378ef27a1c0f9c", + "docsite/themes/book/exampleSite/assets/thumbnail.svg": "4bee845857320fd06248dd2fe06e5fffcb1d52f0093f939c0c378ef27a1c0f9c", + "docsite/themes/book/exampleSite/assets/_custom.scss": "0f6232a69bdd3d7901fd791df8a0ac21ec6be2a3cd286fc95297b6e925cb2a68", + "docsite/themes/book/exampleSite/assets/_variables.scss": "794b46bf585ab8631218855a9f4889e2c7395052a820564d1d4b6ce6d30507e7", + "docsite/themes/book/exampleSite/content.en/docs/example/collapsed/3rd-level/4th-level.md": "fc14c8ccbda345638adaca21ad9fd2d7991ff1234eab176312f44a3f0989ffe9", + "docsite/themes/book/exampleSite/content.en/docs/example/collapsed/3rd-level/_index.md": "dd512a14f48f76edb4d7344a6c1aa75cca8747b3cb8dd09e55ba14528768ee6d", + "docsite/themes/book/exampleSite/content.en/docs/example/collapsed/_index.md": "e25e8ec3260e8b4f0639266641adbdb0f91f8beb0027a6fa2c55ae307b03ea7b", + "docsite/themes/book/exampleSite/content.en/docs/example/hidden.md": "d50d384d71633700074605bc650b9b7228c2517c79876898e5058bf2809ce7ad", + "docsite/themes/book/exampleSite/content.en/docs/example/table-of-contents/with-toc.md": "3a5a4fd9739d18ac52b3e0232cbf960fb29097018338c9366f682893222bbcb1", + "docsite/themes/book/exampleSite/content.en/docs/example/table-of-contents/without-toc.md": "269a6f8c6b2f7ad0cec571e3b1935f6d3b57e634aa1c4886c9482f51096b22ab", + "docsite/themes/book/exampleSite/content.en/docs/example/table-of-contents/_index.md": "b54f9fc133c25abd8f95bac6adfe7491d3adb9bed180725686681e963459fd5f", + "docsite/themes/book/exampleSite/content.en/docs/example/_index.md": "8e27a4c3b74f73f33b37318e9ce913cd7b1c518f055b7c6fdaaa2922d5ae0ca8", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/buttons.md": "d510afc0022ed9ff1c6918ab762d560c449a3b66a9df6d5c0dacd85cea203f62", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/columns.md": "149b88e672c7628b07ead012dd29336eb99922fd84bc679b401b20e72e89dc09", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/details.md": "2f6cccf0000d5597347fa0c2f0c67f0e88535fcc652263234c2d485edd76c4e6", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/asciinema.md": "7fc0034577014af84cbeeaa882dfd8379750fdd4c21cb189306487a638c4c855", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/badges.md": "9438de72724f7383d02bf34ca44372fed49be914adc06312137c3bcb43445377", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/cards.md": "2677fe82c620f345c97e341d922010be7197271bb69ec4205a5f0e0c7c489b67", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/images.md": "ed472a8d9f21f61b13297b3dd6c2f2520ddedfb6456f51ee2f2489c6f728c7f8", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/_index.md": "165e223b67516321d105f2d195c8819c6a43f528cadd8e2a2bbfabde1a1b6cbd", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/hints.md": "cd0f7ee9c55875ccceccf19fe158364a26f1997e446ee6f0751eb019fb793093", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/katex.md": "5a11533da0135ef6238d693a66207abec0a09c47f0d1976e6589e7bf3cea50aa", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/mermaid.md": "c67848f63fede56377f6710d55e7bd00e607ebee5a1ba3fc74454fa9822ff194", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/section/first-page.md": "cf17f56b40c55632db6eebe29166632b2c249f22ab7c5b8b364216ee705a5c82", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/section/second-page.md": "8fa957f7ca87290bb9d2da1bd3f31920affda161cb6c662ef371ee8090608716", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/section/_index.md": "15f92f196c1a3b36c4e7283342e1a016d57d1b4aa0a6e8cd1637487df1d12fd7", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/steps.md": "07eb9697c3662c76ef77713b8416c53a116eb52a8e43229ddcc9df4ea664bd14", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/tabs.md": "c942f21ecfbed320976d017ea751a319accd7b8ddb32fa2fdbf280ef574cbd1d", + "docsite/themes/book/exampleSite/content.en/docs/shortcodes/_index.md": "970ab5b528d432e02f978aa6fc8de9bc5da79dc78b389939a13a544cc4d7c927", + "docsite/themes/book/exampleSite/content.en/posts/creating-a-new-theme.md": "9141a10242b42c06cc99bd7a049f71d70244c176f54bdd9af41da4c1fedbd26b", + "docsite/themes/book/exampleSite/content.en/posts/goisforlovers.md": "9bb1d418d643b9f40cc3b54112189b5278e54fc815abe1216dfa66b8968db6a0", + "docsite/themes/book/exampleSite/content.en/posts/hugoisforlovers.md": "58e7c15fe4b3a5adb91568a8de11edf808593c8875c9f85bfce8bd7b46aec339", + "docsite/themes/book/exampleSite/content.en/posts/migrate-from-jekyll.md": "13b9eda587da2dcd24ef1b4c2a99bbbebaa7226d76818baa92db47dcd808676b", + "docsite/themes/book/exampleSite/content.en/posts/_index.md": "236b3f804e315bb8878717dd814340b07eb1d188033c315e081981b0bf442cd7", + "docsite/themes/book/exampleSite/content.en/showcases.md": "358f1b15841b8b4fa5de1d4a2413bc13a4b7f4cfb0d9425dd32b0088964ff854", + "docsite/themes/book/exampleSite/content.en/_index.md": "53dfcc6e06d88c0193f851153225daff84cce4029a8ab35670591b917c13e386", + "docsite/themes/book/exampleSite/content.he/_index.md": "97c7529a40de0ad874367fac1a2d79df15d4f85f57f14e38054b897594999eaa", + "docsite/themes/book/exampleSite/content.zh/_index.md": "9b24296eed2648b76d3b62cd42e8afe130e7e036804406e18020f7a62beafe07", + "docsite/themes/book/exampleSite/hugo.toml": "e1cc2fd379c6c49b2835a8fac2f9e7df0dd48c8eb9498db78e469c6e764c9bc2", + "docsite/themes/book/exampleSite/hugo.yaml": "8ae96b114f68f2fbffe2e1b3c8ae3ab67ce27de4a1adfb4f9e812c998d62ffeb", + "docsite/themes/book/go.mod": "0fb251591b89db4f4373682ec5def8f5949886e6b721c96a07b9669e8d5e3d6c", + "docsite/themes/book/hugo.toml": "b8c0486f738fb5265a697e7abfed196fed5272a7584410dcf46d1b35b6715024", + "docsite/themes/book/i18n/am.yaml": "a5ee3bdc39d1024c19b4eec9c9d7044fee9ad951d5d0b3b668e8ddf61615ea00", + "docsite/themes/book/i18n/bg.yaml": "68b820ed8b0cd0a95e5c15c32e78c1313ed9eea4e6a12c3db6c2c6f0954b6775", + "docsite/themes/book/i18n/bn.yaml": "05f9a9411ba92068ba721a0e1a7dbbc14a3153b9ec4b8bd92c2a95f5047409d4", + "docsite/themes/book/i18n/cn.yaml": "534133758d593f4154a8885cc40680d78fcedf5042e97758477a32a5e4e8784c", + "docsite/themes/book/i18n/cs.yaml": "f1da63b62ba0f436543e7663638b091a672449cca7071bf7fcbe5111c84c18f4", + "docsite/themes/book/i18n/de.yaml": "f889b9e1c012c8d06e80e3e3cf43ee145e57f8700d2163eac1f81c9a6e2214a8", + "docsite/themes/book/i18n/en.yaml": "1b38dd242be133c4a506cc3eaafdd58fc36542fe2d19a7372e3b2a0c6e7c1c05", + "docsite/themes/book/i18n/es.yaml": "fd1c3be35dd4aa44d897fd1b374623464617d6eafc0080d8faf3a6e8506eefc7", + "docsite/themes/book/i18n/fa.yaml": "6bcd040bb477434a3f21e988a20382c01d61a2b90fdd63cc581482fc1dc48068", + "docsite/themes/book/i18n/fr.yaml": "1b68f70ec951538881309e5fee269bda2ceb5f1c65f141b7bc64253e5438a0bd", + "docsite/themes/book/i18n/he.yaml": "4692eb2c915e48a67b3d2f6acbce95fd3f71e5867790cfb3cad0284dc5686d6f", + "docsite/themes/book/i18n/it.yaml": "e9042950695ae91f040378b514160c3633194ea54d634a41432ab2e1744aee60", + "docsite/themes/book/i18n/ja.yaml": "b18a87cce2cbb1a465350e627831bae14cf1843f7637806b074863bdbeef95ae", + "docsite/themes/book/i18n/jp.yaml": "917e7c5692c6f1cbf3cb64179c0169ff0b801af965a5c2a6c72bc706204ddf3a", + "docsite/themes/book/i18n/ko.yaml": "2082302098645ec6fe354b6e029a36b1b83d61889b55676b039076d10c31cd20", + "docsite/themes/book/i18n/nb.yaml": "9843f3a7cb69e023fe58af55273e99ab38af4af9be1c526250324ed71c303288", + "docsite/themes/book/i18n/nl.yaml": "91b89e3776d94603205d1cc021222473b8a341b75de2f434c5011682bcf919a7", + "docsite/themes/book/i18n/oc.yaml": "e6aeb7f6980b86616863e7283e8de4488bd844009f9df2e3a7617accc7d0f912", + "docsite/themes/book/i18n/pl.yaml": "e1bba59fb963a18c9ec7db40f9025cc45a7a9893237bb28cf585b9043ae370c4", + "docsite/themes/book/i18n/pt-BR.yaml": "55312f44c91aa7e5d72b2c02cc69f28308a187e79564aacde72d4ef6a2ff202e", + "docsite/themes/book/i18n/pt.yaml": "846f86242c3d96ce457b60213e436bf091ba44d5e1ed04872560204ecd50b71b", + "docsite/themes/book/i18n/ru.yaml": "108ad3c4811f2a3f2555e5fd73c2fa25e20b4663184596a8dbdb9889d6841b08", + "docsite/themes/book/i18n/sv.yaml": "c15309e0fefd32de85d4325cafcb070973e2037dea55145b2b4bf5947586ace1", + "docsite/themes/book/i18n/sw.yaml": "ff802c961ff06b69441e00f6128601d0a18a8105d2ca9cfba53f12244d9e239d", + "docsite/themes/book/i18n/tr.yaml": "d3825a2acfc4264e2935768b0668aba45788fdf2203f3b8b8480028795680c6f", + "docsite/themes/book/i18n/uk.yaml": "d61e1f25fd10c401d18c698608244d2591a7e5cc099787efd441eeeba97a1574", + "docsite/themes/book/i18n/zh-TW.yaml": "f4cbc7dc8474b8f4e565f4100dfb05e4762aaa0d84a47985fdd9f99c75a190b9", + "docsite/themes/book/i18n/zh.yaml": "76efc91a7a52cf7fa8d8c8acdb3084305809648c6f6631ffd7b20475682a6c27", + "docsite/themes/book/images/screenshot.png": "e9c6d712d65b21b47dc68bf501fd5845937c33c3ec6370b8a7fc2cb7ca0cbdcc", + "docsite/themes/book/images/tn.png": "24d061cd63e95955121805ec15bd4ea607907b205910089d03c44fa00f56d7b0", + "docsite/themes/book/layouts/404.html": "de477354fd0997ab6947744f7ccb4258fa797d73321352b8e2645d1a4e68cc4b", + "docsite/themes/book/layouts/baseof.html": "799388123172089332f32e133c642a955a88a62adb0b3ef6fafcc41ee3d87d1f", + "docsite/themes/book/layouts/landing.html": "d8c650be975fd3f072c2285ffa5dc7a982423ef5aefe8c501803c9efc95d4d27", + "docsite/themes/book/layouts/list.html": "d1a3d5ea16f55612f3f0c28e6fe678685d41c6b3ad346abe9694537e840cb132", + "docsite/themes/book/layouts/posts/list.html": "aa498229d374e706a02795def10a0a422a8fca8156bb605c49f03f28eb860a2c", + "docsite/themes/book/layouts/posts/single.html": "e28934fe4da248ea8090c915a0758744708ae724b296176bbe4c3261e4f2004b", + "docsite/themes/book/layouts/single.html": "d1a3d5ea16f55612f3f0c28e6fe678685d41c6b3ad346abe9694537e840cb132", + "docsite/themes/book/layouts/term.html": "7d91f05404a972e4a7336f8abe6a33e508041464feeea6d9ed4daa1f0d179582", + "docsite/themes/book/layouts/_markup/render-blockquote.html": "4a9e70317b3d62c9fc535dfffdbbe3899e0cf155ec693dd3fb2c904e43cbc025", + "docsite/themes/book/layouts/_markup/render-codeblock-katex.html": "bc4dd7c45b288dee052a8b48b824dd97a0126831fb62e88da9d89dbe04236a3e", + "docsite/themes/book/layouts/_markup/render-codeblock-mermaid.html": "dcae75b5607d0a0f3740f528c2020eae37ad9c8606b2d33488de0652af2742d5", + "docsite/themes/book/layouts/_markup/render-codeblock.html": "73e2a95e196cc20ff4a371032484e38c7d045e118934dc4f70129a73ba3a3d27", + "docsite/themes/book/layouts/_markup/render-heading.html": "16ea67a5854b56ac36f891d9e60c40ae6e56f2819e0bbdb7bd16cbe753f0c951", + "docsite/themes/book/layouts/_markup/render-image.html": "38aa57b44aed99de669b7feb12226c0501cb7dbb2fb24b6584087e3675535349", + "docsite/themes/book/layouts/_markup/render-link.html": "5f3b1ee5d8bdd1648a9ef559fde2d843aacb72e7d8b945800f2dbad4eae23d72", + "docsite/themes/book/layouts/_partials/docs/brand.html": "249c34b0cc6c747f314ee1223ce4c0c68ed87a77e4f0e02aa9ac05dceb267d08", + "docsite/themes/book/layouts/_partials/docs/comments.html": "d2b03ecbed897b1efd692f868cc59a6692bbb13dd474d02631f1762051bb22c4", + "docsite/themes/book/layouts/_partials/docs/copyright.html": "f1176ca3aec1733bc3ea636e626e4835858fba833f107945c3d829e4a0719a0e", + "docsite/themes/book/layouts/_partials/docs/date.html": "71756e22a91a7c8d14692327e6f85a2144c3c8056158d4c4cc40426718a8f091", + "docsite/themes/book/layouts/_partials/docs/footer.html": "a9da20062df9536109e63338cc6c62f567bcc6f1c0d012a81dfde312a1483920", + "docsite/themes/book/layouts/_partials/docs/header.html": "4cbb919ea4ca9d9d50f66c910417419ba80cb9730a0aaa5254f4e5865ac1c2bf", + "docsite/themes/book/layouts/_partials/docs/html-attrs.html": "eb60bd1eca4462d173207840ef791e41cfe58a597dea5d23fad2db00b230f165", + "docsite/themes/book/layouts/_partials/docs/html-head-favicon.html": "16e89c4d3f87e043470b322f57a7db21151b640bad20a058ac38ef4c8aaee721", + "docsite/themes/book/layouts/_partials/docs/html-head-title.html": "8e349738aef131639acf76b6687cc67b38dd32418f7062c3a866f23b2957ee30", + "docsite/themes/book/layouts/_partials/docs/html-head.html": "49b750f658cdb1bef92dc8f40ba20bc4891a3894e77f0541fc4eb1f48708df3e", + "docsite/themes/book/layouts/_partials/docs/icon.html": "0e646ac0024252a14a06ceab1135559333c310296e4252259baf25c7eaa06135", + "docsite/themes/book/layouts/_partials/docs/inject/body.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/content-after.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/content-before.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/footer.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/head.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/menu-after.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/menu-before.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/toc-after.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/inject/toc-before.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "docsite/themes/book/layouts/_partials/docs/languages.html": "af469ae1194c9065b5bfe5719f0ffe3bfb4184cffc53d4b359b15ad0e684445a", + "docsite/themes/book/layouts/_partials/docs/links/commit.html": "8c4aa6decbadd5731efeaf3b0d313e349072654fc8d788063dc7114303ae61ac", + "docsite/themes/book/layouts/_partials/docs/links/edit.html": "c1fafd2094df666b1eb41e988c67fbfe3056aed98174d4d792e6e23b2e254563", + "docsite/themes/book/layouts/_partials/docs/links/portable-image.html": "92e2286fe341b5ff3be0fd37357a93b3da6df2e92c98e4a50c7a7d1badf8d886", + "docsite/themes/book/layouts/_partials/docs/links/portable-link.html": "3b2f6984f91dd1d7af5f02fa76fe1d407a874318b556f933a5d073c4834fba5b", + "docsite/themes/book/layouts/_partials/docs/links/resource-precache.html": "d2f13a814de2ca8e9dec5a6e39aaa4c5b52fd6c6042b719b1291cc71e797f993", + "docsite/themes/book/layouts/_partials/docs/menu-filetree.html": "734745c59386c06866b1fe2166761bbb48825cb991913e6e9b718bb5cefb7eb8", + "docsite/themes/book/layouts/_partials/docs/menu-hugo.html": "9f41cbec35673a229f1b22b4e9f90195b168aabc1439e60395ba36bcac71cce7", + "docsite/themes/book/layouts/_partials/docs/menu.html": "3d4c64f06535ddc5ddb02c51b559dea97bdda5202958fadeb513c9b19a51bec7", + "docsite/themes/book/layouts/_partials/docs/pagination.html": "1f2f57652a7d18b2b7c2bd52d0d3748c11b0c4bc54040b888b61cf8021a3e62a", + "docsite/themes/book/layouts/_partials/docs/post-meta.html": "de86a4d63a53055a0d6aad72b59bda4d8861cc3130810a3cef7672ccba100767", + "docsite/themes/book/layouts/_partials/docs/post-prev-next.html": "939c281d1c5475ef493d905a27bf9ae7c1eec464abb77920065463f29aa81c82", + "docsite/themes/book/layouts/_partials/docs/prev-next-cache.html": "73c98d81bb24cee004f9edc4a9f9bf27a687b9b2a6fc02377b022a0cc6d41998", + "docsite/themes/book/layouts/_partials/docs/prev-next.html": "0471677fdea67cf62053e8db40b4000cedfb65c5c41d68d5f3a1954c6e636818", + "docsite/themes/book/layouts/_partials/docs/search.html": "d94159673f1c002f57a41a6a5dd9601b1c55845b36b9df7bf903f24d0b309254", + "docsite/themes/book/layouts/_partials/docs/taxonomy.html": "59419c90ddf1b27dd33ef014cfc95070aac60788d7fe630e03561322e7c358de", + "docsite/themes/book/layouts/_partials/docs/text/i18n.html": "dfd62754dc30cec852b20bc94f692fefa9aaf9a906badc4ab13fb4a60af2420e", + "docsite/themes/book/layouts/_partials/docs/text/mapper.html": "14f1dff2706d3c37fab82c5d54fd9663c50675abac56d719fedc53c167eebeb5", + "docsite/themes/book/layouts/_partials/docs/text/template.html": "6943289bd807257d9adc998cae972ac4533ebe3faea0a0b441283e2c55874141", + "docsite/themes/book/layouts/_partials/docs/title.html": "fb74243837a7f1887a19fc0314d4aaab897b8017061607b21e006ea7f4d6a472", + "docsite/themes/book/layouts/_partials/docs/toc-show.html": "c686c62588a26dc5d82080c8361c59892f529d82376b2cf04c8a6a585965f286", + "docsite/themes/book/layouts/_partials/docs/toc.html": "642487d8c5a2e7f0909d20ea3930c98672a648416831ebd3c67e0be35e3a295a", + "docsite/themes/book/layouts/_shortcodes/asciinema.html": "44f13797b77392f44a9853aba467c0f58d4653636eb1d5c10778ac53f0e7f1c1", + "docsite/themes/book/layouts/_shortcodes/badge.html": "770534c702ee8c0c7ab2b46dbdb45b13b668cbc8ad763bb6a71cc3ec4bcf8ccd", + "docsite/themes/book/layouts/_shortcodes/button.html": "6bec89979f45bcbe923df2e57616449847fca29eaf87ca6696f5ac30bc2c70b3", + "docsite/themes/book/layouts/_shortcodes/card.html": "9fc7a1e00a581188516d64e6609d25ff09515c9a449297f92662369fefeb13c0", + "docsite/themes/book/layouts/_shortcodes/columns.html": "861f846a253295338308becd1376fe71739876b08fa82353d169ee0d4894d596", + "docsite/themes/book/layouts/_shortcodes/details.html": "20604b5e24b0eab48c85d7b34be91b592af49ba16625fb1341b5d98d4fa329d9", + "docsite/themes/book/layouts/_shortcodes/hint.html": "1a23d5c9fba4caa9857fb41e33230462f635981b7890ac0484b93e35d5c2d413", + "docsite/themes/book/layouts/_shortcodes/html.html": "ca392217e76a616dc9b5e16a01c7fdfe962696696555e49221e85d09a260b429", + "docsite/themes/book/layouts/_shortcodes/i18n.html": "35ff33e495b0b7c796153bccc8ccbe5bdd9140c19c73da0a17bd7f07b8bca015", + "docsite/themes/book/layouts/_shortcodes/image.html": "0decb0c5cb45f5098e63e9b906a37cbdaaa0de0ef29eb7286e256ebec4e9b17c", + "docsite/themes/book/layouts/_shortcodes/katex.html": "b50cb01fcd693db88cfaab0b4620a9af423fedee19aed0913650666a98582e39", + "docsite/themes/book/layouts/_shortcodes/mermaid.html": "ad18f3b92de945cbabddee4a0b6b3a0bc2518fe224579a042a0586103ba5d902", + "docsite/themes/book/layouts/_shortcodes/section.html": "587a676b93e9855390d64050f451ec942b514eec881c752abe31cfd464dd4345", + "docsite/themes/book/layouts/_shortcodes/steps.html": "0f13a01f26c8bbb8944d38e01eb2dc811b7fc31de9d357e30b7e587e5aa8c990", + "docsite/themes/book/layouts/_shortcodes/tab.html": "cee68e31b4c37739c24a86af3297d38cd06cc27dc03484ef7566b17713f92b6f", + "docsite/themes/book/layouts/_shortcodes/tabs.html": "9842de1012e4970a863b3fe6ea274c9e1073922cb2fbe6d2074c6480c89ea512", + "docsite/themes/book/LICENSE": "45bca9337d471329589a80cf1abbe0021e6a8bc08cde0e3c11855603410e79a3", + "docsite/themes/book/README.md": "ba83033792bc5443553f393bd6ac9ab4e24ce52d8633561afc48e634f7fc6b8a", + "docsite/themes/book/static/asciinema/asciinema-auto.js": "edca42f5408f552e3b9ba2cb48dafefa7136c3d1179f81666ab772c033d2586b", + "docsite/themes/book/static/asciinema/asciinema-player.css": "8094d5300e5c1d42c63ce1cabf98028447c511c6d365774cd11a4f684e5b2637", + "docsite/themes/book/static/asciinema/asciinema-player.min.js": "e30fd9e9b061432aee6c2c3e6b64767a6962e5a21649e34647f2754a6847f82a", + "docsite/themes/book/static/favicon.png": "ec83c387aafbc417f3ace190d59761e79137be7b3c6b80bbdb3dd65fa6242d9e", + "docsite/themes/book/static/favicon.svg": "b6ac5f9e61c94e306222476f41f76afbcd340b46b112deb94921ea1f485e9d23", + "docsite/themes/book/static/fuse.min.js": "13bedc6f617f6c54cd99c83dbf78eb4aa195cc9626fcccafb2489f8d770d616e", + "docsite/themes/book/static/katex/auto-render.min.js": "bb53eb953394531aae36fdd537065c4244eb8542901a3ce914601d932675b8ac", + "docsite/themes/book/static/katex/fonts/KaTeX_AMS-Regular.ttf": "68534840bcfdd2bffb6f0e8deb48684dd01e7f04ea2813267577afb906de1d13", + "docsite/themes/book/static/katex/fonts/KaTeX_AMS-Regular.woff": "30da91e84c893f875e252689faebdc590b2871145e8adc7f9a9d4dbd8ce0b251", + "docsite/themes/book/static/katex/fonts/KaTeX_AMS-Regular.woff2": "0cdd387c9590a1a9f9794560022dbb59654a7d86f187aa0c81495ad42d3a7308", + "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Bold.ttf": "07d8e303ce4fc12b4bb54f1004170dd190a1f3db45d400fe68060df3e0897268", + "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Bold.woff": "1ae6bd7475590e97e7f145a89e09ccde322f7a6bc0b91607b1c8b8ee28290fed", + "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Bold.woff2": "de7701e42cf1f4cf0b766c03fb27977207eee2f4fd5d76fa82188406da43ea4c", + "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Regular.ttf": "ed0b74372feefcbb9c0666b2e210da37b7e49fa7fbbf3eeb11db5f693dacfbb7", + "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Regular.woff": "3398dd02302557a793f2863f88e02d96ce10df2abffa07c8e9fa90775116e65c", + "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Regular.woff2": "5d53e70ad607c2352162dec9e0923fb54ecdafaccbf604cd8dcf7d00facb989b", + "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Bold.ttf": "9163df9c7122432e6495b4229fa9071cf9ae86a758ae5efc4924ec2e1a6dbce1", + "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Bold.woff": "9be7ceb88004ab8ad124082246fbfcca4091e36385d4ec6ed1df67375dad50fb", + "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Bold.woff2": "74444efd593c005e3f4573b44524704c0af0a937fe911cca9e94068d0d140d3f", + "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Regular.ttf": "1e6f9579e90e2cac37f8f60a597c436e075c114385652b7cbeb0dec0421291b3", + "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Regular.woff": "5e28753be717dac97f559f49bc10be9cf3c124ddcabda6659d11cb68febc6463", + "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Regular.woff2": "51814d270d06ff0255dba0799994fa4d8c84d11f09951d47595f4abb1f3602dc", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Bold.ttf": "138ac28d1663b3037e9c5f52371fa5c63d8324f4a38d22cd573e6ea3a3fd0cf8", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Bold.woff": "c76c5d696297d51b9cb1639c7da4334f0e7dec81b42b11213b5e25ef671bb822", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Bold.woff2": "0f60d1b897938ec918c8ce073092411baf9438f6739465693ff18b0f9d20b021", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-BoldItalic.ttf": "70ee1f64a20f2048c21940ef46d0144fd215baa953ca69afd1e31e98544f708f", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-BoldItalic.woff": "a6f7ec0d846ac7ad975adb8959c37ed49b94acbc4ae436db9ce9e20287e4a64c", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-BoldItalic.woff2": "99cd42a3c072d918f2f44984a807cf7aa16e13545fd0875fc07c6c65f99e715b", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Italic.ttf": "0d85ae7cc30f23790a7f1a58c4a112fdca8aae769b6ba11429af1d98b1b6cb3a", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Italic.woff": "f1d6ef86f3b11a528bd5185199bd2443ecb2b0dead96d88674b5a2c12be24bdf", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Italic.woff2": "97479ca6cce906abc961ecac96faa5f9ca2e61b8e7670d475826bcdee9a7c267", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Regular.ttf": "d0332f52868370fd83ae7fa46470f90c8f2eab2fcf12bc4f88080b340c95a830", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Regular.woff": "c6368d87e8a1a3a5d337623d83d8dc4b868f242a9ad476237d6f8d1e0f168cdc", + "docsite/themes/book/static/katex/fonts/KaTeX_Main-Regular.woff2": "c2342cd8b869e01752a9321dc17213fc40d4d04c79688c1d43f2cf316abd7866", + "docsite/themes/book/static/katex/fonts/KaTeX_Math-BoldItalic.ttf": "f9377ab0271cda59af24bcffbd46a4d0c8a3572ffafdbb38de2ad5ea7b0d5ee5", + "docsite/themes/book/static/katex/fonts/KaTeX_Math-BoldItalic.woff": "850c0af5c2238497febaf5e461d880bf458c341f42f4f330f1b1ab5698b1998e", + "docsite/themes/book/static/katex/fonts/KaTeX_Math-BoldItalic.woff2": "dc47344dbb6cb5b655c8460d561f4df5f501b90c804ad3c6cec65fe322351ab1", + "docsite/themes/book/static/katex/fonts/KaTeX_Math-Italic.ttf": "08ce98e51b04d58945a301e639e02b6998af29fdfd61a7b8afdd07bbfc479d4a", + "docsite/themes/book/static/katex/fonts/KaTeX_Math-Italic.woff": "8a8d244581371912b8f3f5a23e2437cb2a59cd9bcaebb0346e722c05737a2571", + "docsite/themes/book/static/katex/fonts/KaTeX_Math-Italic.woff2": "7af58c5ec8f132a2ddde9027c6d7814decce4d3b822a11192a42a20e2e973264", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Bold.ttf": "1ece03f79f95277d57dc7f6b435a74e1379b0d46104a8530286b60ff49369ea0", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Bold.woff": "ece03cfd83e22c212cdef66feb8442d25a083beb988db3f1883f3f9738d750ba", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Bold.woff2": "e99ae51144bf1232efcc1bfe5add36262c6866b0faab24fa75740e1b98577a62", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Italic.ttf": "3931dd81faed86ba021bb2bbdc36f5bed9a38d6b4f4077aca59b265aa1b02083", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Italic.woff": "91ee67500cc0129aa0ace3ac5c61ff1692102f0f31d02b69347fba35dcb75bf2", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Italic.woff2": "00b26ac825e2095056396e0553b8ac26d3f8ad158c3826e28b4c45b385c4714a", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Regular.ttf": "f36ea897e19f4a2e571d1e900e4e3710e438deb05a842486045ba0a3e616a4ad", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Regular.woff": "11e4dc8a6471ff6d6ee561d53d10fde8f7489e798257ff449c5d37c197435605", + "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Regular.woff2": "68e8c73ef42afd3ccec58bf0fba302cce448938e7fc020a5e31f8a952eee1342", + "docsite/themes/book/static/katex/fonts/KaTeX_Script-Regular.ttf": "1c67f068fea8bb09bf099c088b1cf64bd27516a6e07f4684344873564bb66a67", + "docsite/themes/book/static/katex/fonts/KaTeX_Script-Regular.woff": "d96cdf2b3bdd4d64a8fd5f74a4c467f123a8a73931cd435889f08ffaf9bf947a", + "docsite/themes/book/static/katex/fonts/KaTeX_Script-Regular.woff2": "036d4e95149b69ff9bcc0cd55771efeb25ffa3947293e69acd78d5ac328c684b", + "docsite/themes/book/static/katex/fonts/KaTeX_Size1-Regular.ttf": "95b6d2f1a50173bfedb8c63e1d1c99b10427d0a4df4201cb44513b226951a22b", + "docsite/themes/book/static/katex/fonts/KaTeX_Size1-Regular.woff": "c943cc986384f59e86bea5fd7dc50a9c4dfe567a7c05eb40d6790720dead97c9", + "docsite/themes/book/static/katex/fonts/KaTeX_Size1-Regular.woff2": "6b47c40166b6dbe21a5dfca7718413f2147fd2399be1ba605d8ad39cedf25dfe", + "docsite/themes/book/static/katex/fonts/KaTeX_Size2-Regular.ttf": "a6b2099fb555c60e3a0db3a08842ebf1d732c6eb4e4bf44913613bed4fc4e39b", + "docsite/themes/book/static/katex/fonts/KaTeX_Size2-Regular.woff": "2014c523c3210bcc166648c4d4cc57f05b747df07a24277bf71c51e67dc79e3d", + "docsite/themes/book/static/katex/fonts/KaTeX_Size2-Regular.woff2": "d04c54219f9eaec6d4d4fd42dfb28785975a4794d6b2fc71e566b9cd6db842dd", + "docsite/themes/book/static/katex/fonts/KaTeX_Size3-Regular.ttf": "500e04d54f0d51666332c9d2089aa803be22aa878eca539e59fa53c6e522b082", + "docsite/themes/book/static/katex/fonts/KaTeX_Size3-Regular.woff": "6ab6b62e9b62dae2c00dd90f791bd10950be0ecc3490d7d6045f51c2e8fe0949", + "docsite/themes/book/static/katex/fonts/KaTeX_Size3-Regular.woff2": "73d591271b1604960cb10bb90fee021670af7297017e0e98480b332d11f51995", + "docsite/themes/book/static/katex/fonts/KaTeX_Size4-Regular.ttf": "c647367d1dd4e162468717d020e1fc0f1dc5c26ebfdffbe55261713bf88c5877", + "docsite/themes/book/static/katex/fonts/KaTeX_Size4-Regular.woff": "99f9c6750b489c9462bf04900bd3f939df9b829339daaaaa99ef5495cdddea58", + "docsite/themes/book/static/katex/fonts/KaTeX_Size4-Regular.woff2": "a4af7d414440a1c1790825cfb700cf9cf43b0f2c4b04f0ebc523011ad9853ec0", + "docsite/themes/book/static/katex/fonts/KaTeX_Typewriter-Regular.ttf": "f01f3e87d9c6a61c0c081ceb577abd864eb00a612f7ac1620dd6915fad2ef5aa", + "docsite/themes/book/static/katex/fonts/KaTeX_Typewriter-Regular.woff": "e14fed02b1aba7ce9f5afd5844b5d0321b22351febc720e0de8b8723527609f7", + "docsite/themes/book/static/katex/fonts/KaTeX_Typewriter-Regular.woff2": "71d517d67827787cfabdf186914cc3358eda539e37931941f2b2fd4a21f68c0b", + "docsite/themes/book/static/katex/katex.min.css": "23f19fd1a404c13697f7a511d4b8203bec3b22bc920732739879c57e8a7a7f44", + "docsite/themes/book/static/katex/katex.min.js": "e8d885505949f3a5f4abdd5dd0d53696bd1371ad26ffbf4f310dcd77c8cdae89", + "docsite/themes/book/static/mermaid.min.js": "d95f26c976d1f0415ef3f64e6f31f01e439813171acae38b61beabe387a8b689", + "docsite/themes/book/theme.toml": "81441d90610c6969d6948e416f65cd81b96118aad7d6ea457b5dd7b195856768", + "go.mod": "1a3ffdc928ab7415386b9c8bfbe9b24cdac2d67f54f12f4ad5953687828312b6", + "go.sum": "e12956337ce5b0c90e0f137f3051838935003455109513e8696ea006fac3c3e7", + "homebrew/pass-cli.rb": "8a0698d414be4c3eb02eb1db29c6d840a546405ea205298f24abb81f38d87308", + "internal/config/config.go": "4bdf7fd0dee283c655ec8525772b2292eee5290780197ba8d491bb05ef9f1b63", + "internal/config/config_test.go": "89a3d32aa581dec21f795f63ce2a89c63aab526d568c6728088084ab51fba851", + "internal/config/keybinding.go": "339aef6ebe15ba93c8d99ae33470819a76469eb175eaef02a5392bbb7430c133", + "internal/config/keybinding_test.go": "ab29072cf63fc34a831fb97094283eb0a726e4d7a10e970aabc090342a1d6cc0", + "internal/crypto/crypto.go": "1477c28c4d7e9f8ad6c20c3d66dcbbc12a8c1cb2d80f3c4b321f1ff4f88adf57", + "internal/crypto/crypto_test.go": "7753bd4be51aa1198bd9aed2652bbab745fbbcfa6360708e1a6b99efd65add98", + "internal/health/backup.go": "ec9a1d09f08167c01c0feeb426942498e3dfbd8e3cd82be817b03ee8e537034f", + "internal/health/backup_test.go": "75016bd1d3ab7c5f9689cc9a02b908427293423eebb544884a7aa44b45cf31e2", + "internal/health/checker.go": "a696e3d7e6c01fdb916f181d202c90f546479f2b4c8d2dbcbe53e3610805eb3a", + "internal/health/checker_test.go": "ab4f6b054159c77fd097e594b0a7e509dc022aa80617a32e59466e35cef9bcf0", + "internal/health/config.go": "eba4b79f5239cb502ea0672edf03b2c0a1275a268f4dc1d1bd8a9ab27e1bc3a5", + "internal/health/config_test.go": "78e5af8c1c5bdb541d520d7eb5844992aca8f9da1dd3a8a49d2f6860670e4b57", + "internal/health/keychain.go": "6e1f055e6a8df004eae7f1f08c6cc92c292ee277a68328fcc1a0d68a0cebf82c", + "internal/health/keychain_test.go": "1f731b3fc0db710d103fe807bccd243bbb4ead13d3f7f6b318de55244c2b82a9", + "internal/health/keyring_mock_test.go": "d87416553a0045d9a6682d49c78667c3afc7f7ed5c8729454137ad47b79a800d", + "internal/health/keyring_production.go": "15006aa965f9564e844d95f552cb91e4a3d5b637c78f5b591181b76c4bbd70eb", + "internal/health/keyring_service.go": "492cf9753a9aad188419918d57d1f39b7994a2d9ebb96e107870e20dc4938de3", + "internal/health/types.go": "c806d5df05527e564b91c62c698a1c682835bb921046dbbbed798f6f3b2c45cf", + "internal/health/vault.go": "2d35efbab34b96552108dba1fc8e75715749889ab3fd046549824d6933b48f6a", + "internal/health/vault_test.go": "c6f2811fc790ca8a544018bf218d1a28596730f6287ba6ed244836a45f60b166", + "internal/health/version.go": "8dd64df30f3784ae85729c7a8e701188b10f4822852200a40844a36899d80ea7", + "internal/health/version_test.go": "b6703fe63f938def85fb99239e78455fa1df80601509d9af277543e2d9d06d02", + "internal/keychain/keychain.go": "9444e0d3deb9e240ed04868963fe055048560ff52912c82a71f854b3168a6445", + "internal/keychain/keychain_test.go": "3fbb937d553dbbbeff643d8482ded08aaaa214f366919079fff07c33afccac87", + "internal/recovery/challenge.go": "a0c1f6bf2259a29d32da9f1ac17a53e39133f7966e23f01c22a7ad9772250eaf", + "internal/recovery/constants.go": "9e09245e75fb841bbdcdb4b4b26361d63026b3cca1df0dc5a5ddd6d4ca4e31fb", + "internal/recovery/crypto.go": "92e9955a85bf11d1092d93597f07554a4ec6b0b502bcccd7ec51c6f4d8e9dc9c", + "internal/recovery/errors.go": "87fad0d7aae5707c74bd5696ef926acbf0373714852dfb8bec5ca7b8e4ba8488", + "internal/recovery/mnemonic.go": "9cc6f33390182d6ff068751c4f13ef62fa7ddd8e0473cb0df7386fa4c7b99cb4", + "internal/recovery/recovery.go": "5d49bca16f4aa2bf75548d7faafae60db6ba3cf1f6e96a3cf3a43579dc245981", + "internal/security/audit.go": "ce9c7c1212180f5369a217d471b99c69058c38198b8bae1ace3d122a1b72d7d1", + "internal/security/audit_test.go": "c30cccbd6ec79881cb73093fa10c54565d49222539441842e68560e696b54f5d", + "internal/security/password.go": "d0130b1bb05895d3a0ecbde6c18e551bd0a95e69c2ae81cc2b8af9297309c911", + "internal/security/password_test.go": "505feaddd5cd170082383f56a5babe02870b1812839f8dcb2553fae215ed1978", + "internal/security/ratelimit_test.go": "0810cdbd38671cdd03e297346cfceb327355dfe8cc5974289232816b06ea97b3", + "internal/storage/atomic_save.go": "fdaebc0dd8cc50172b4bb1cfa795d0b1fc3a981ee7e47631ca7521ea80dde872", + "internal/storage/atomic_save_unit_test.go": "780f378cca3084aa13e69c7989dd2236d9f7c12c56dddbdc6c64195fca08081a", + "internal/storage/backup.go": "ccb257153d4289fc4262c11430851c86122ee7edf6c526d5374e87ab712d43cc", + "internal/storage/backup_test.go": "badb1568eebda7a37d42f88ae72e9f9c5d2d5d4dbb2f5c3c82f5414001426345", + "internal/storage/coverage_push_test.go": "cb0960272bee2548a695e78933f91c042d3b0bd1f9039c56e12d33deb068a13f", + "internal/storage/errors.go": "21b024772cbe1d95f0965f6279ae40c8661279a95fb816c395f17d07ddb72923", + "internal/storage/filesystem.go": "3ffffcfae9cf862a1a81bd03f81de8f421fa829ab8044151b3ac1dc75ca392a0", + "internal/storage/filesystem_spy.go": "6e8822d6adf87f6daf43f63acfdea09a0012583973c486bf4f52b701c958cbd2", + "internal/storage/iterations_integrity_test.go": "adcaaf22f5068749fb65f0e000a1bab3309d655e92bf5f73828f458c7de9b636", + "internal/storage/iterations_test.go": "492efe467c83376cd24b3dc010490aa2b511f3ecf0da0d672aa6ea3371dc3db0", + "internal/storage/rollback_critical_test.go": "c2a4f46cd9ad5a482394e20c4c1e9e9dc9fb4701f9585733e54c439b341a8fc4", + "internal/storage/rollback_test.go": "228600be6611dd1fa75d55c46f91825e07016aef528de1c492450226780ac66b", + "internal/storage/savevault_error_test.go": "7dd88b0c76df4bc827b0dc6e05e23b6caf216d89d063bdb0c581053cb8583e20", + "internal/storage/storage.go": "cbafb5b99b9ff1c3e3f504d4e737e9ea32adef35bd4861468ea763128b268cf7", + "internal/storage/storage_errors_test.go": "57a2beac0869e5d72722297c43b5a6f8ae8b25e944653b84966beb636ef963f0", + "internal/storage/storage_test.go": "4aa1f93f23c619aea1641f7de4ea009d5289ad36d1fd1f2e945996e98bdc0b3b", + "internal/vault/firstrun.go": "575f5ce7ae8a26f53c0b2ead4f12ff172c718384c5ef8bc8a6ab11410ea48cfa", + "internal/vault/firstrun_test.go": "5b3d0724b9095b23f2432e86d4c16694a91a0b98514bf85f5e462090754f200c", + "internal/vault/metadata.go": "94cbf40d6c6f7897c058d1bdfbdca8379b0063c66ee91b4575c2b5a48c90a304", + "internal/vault/metadata_test.go": "61e4d37575c735d11c88b31caaedd3e1166041a2c25e6ce39e30a92e165b9d54", + "internal/vault/vault.go": "1bcac600b2125c87e83915b6ea8458980dd1b3ee134d8b47a1735f0738dc6d3e", + "internal/vault/vault.test.exe": "71f71c3b583ad1906f59146da5f0d3956c05d95fddc13bc32d06ed8634d6dda4", + "internal/vault/vault_audit_save_test.go": "7077beba8ae49b05dddd425d32714898b9825400404a96d80bac168fb231f21d", + "internal/vault/vault_test.go": "f07e1515ec4cfe3227d5f4b5fdb2754082116a7f73bc580ea2fd97bea48e8f54", + "LICENSE": "a66c73aa52d80b8e6287af2d3b4ed036ceb2f9decb540ed411cccc7a39ad215b", + "main.go": "b9d587d7c749d5b70b152fe8dc42f727b213ca765ac8507359ea4b5b5ce6d374", + "manifests/snap/README.md": "e395fff58a46147995b5e4aaf981f624b615b4dba8b3ccac3bb65fb582bb3d7d", + "manifests/winget/pass-cli.yaml": "c4a88dcb7b345331bd742c5663692abe861237bef3c6903aeb16e7773837fe3a", + "manifests/winget/README.md": "e8ef23efb46f2e5c5dad763e0ea17fd710ed38aeaeb2b7def28e7dd0fc45f37f", + "next-ideas-&-features.md": "f869b0b1b016db2cd59800e8ec39454deec50e34f50806362e9038cead4ed4a7", + "README.md": "3b05f3537f17c075a92980d2267d31e0b9c9f74236bcd63067c296dd07d63a15", + "scoop/pass-cli.json": "35b1c6462993e009b89a98ff3303e44c663a89681c19592e1576ca8d3a7213ec", + "SECURITY.md": "46b11317eb0c8d8efe21f891060dd4c722d973c8debf7c89fefa99b8d829ccf2", + "specs/archive/001-add-manual-vault/checklists/requirements.md": "85ab994ef29fae0d0083bd0b1dd34fa1edc7ee442904279b1c140241959991ad", + "specs/archive/001-add-manual-vault/contracts/backup-create.md": "e928793fb396f7adeec5075726e459994ec443f8fde89de83cb5a2fec5ed3db5", + "specs/archive/001-add-manual-vault/contracts/backup-info.md": "47b763b52a7d1785f9c0debc682a82b578eec1e45fe6b2e4724ea4fed216ff4a", + "specs/archive/001-add-manual-vault/contracts/backup-restore.md": "47418485bae535c22cfade20b532e3a96e1ee381cb2ae46d4067671409f57bcc", + "specs/archive/001-add-manual-vault/data-model.md": "e663af445c06e34ef55cafdcb4e0847764c52bac1a1aec4e057456517344bb91", + "specs/archive/001-add-manual-vault/plan.md": "125a0a73ad3e1609a7302aee04364d49f626a595d7c3229a800972872dc7d490", + "specs/archive/001-add-manual-vault/quickstart.md": "b5cdd1ac1c2de45ed3df2747ff03b57db9038cd1ddb7cb5d171794a6a5daf26d", + "specs/archive/001-add-manual-vault/research.md": "f60b7e93780f937123680bd6bd0bc9806be7fd63a5057f7d6e288acd896503fa", + "specs/archive/001-add-manual-vault/spec.md": "baf3a3402c1070f2585519f0d3cc806811ec748359870366c41a158a8d9050fd", + "specs/archive/001-add-manual-vault/tasks.md": "3ca42a5f4bde4603261639315d56bcaadc84c8fbe863a1c36732f46b28b88869", + "specs/archive/001-remove-vault-flag/checklists/requirements.md": "63db9bf23a5ee51e380d1e140928a8466fc49c8ad45e894d754430d2afac3a47", + "specs/archive/001-remove-vault-flag/COMPLETION_REPORT.md": "4c963fbe70aeb2eb9d1e8f74f74ac1efb8cd261ee42133a461488fd7c4480927", + "specs/archive/001-remove-vault-flag/contracts/config-schema.yml": "715cfc569b16c879dcdfe6e80aae5cd8e1ac11b9999b113ede91bdaec6ed5027", + "specs/archive/001-remove-vault-flag/data-model.md": "852c78408738673d164f8c7a48e857fb10bfff88a180f7aec079bca96a85016f", + "specs/archive/001-remove-vault-flag/plan.md": "bb01dc875519003666cdbbb76ef6deecdaf8e13afec6731dbe0aca3c248d8bb3", + "specs/archive/001-remove-vault-flag/quickstart.md": "76a96c2a731fa9a7cba916a762dbd1d28c1d98105c3e79b52ec3008d686e6237", + "specs/archive/001-remove-vault-flag/research.md": "6b789837898e4b3fc1d1fa9e166da14eb37712e22e9bf870eab36849521d7a84", + "specs/archive/001-remove-vault-flag/REVIEW-FINDINGS.md": "747a7ab88c685ff5429b271d71837bb48a33a7bc6bfd4560c6f57666df890a8e", + "specs/archive/001-remove-vault-flag/spec.md": "37230a98d9d9dfadd8fe1ba62dcdbe2308deafb33a2ef000cf1d28f27eadc674", + "specs/archive/001-remove-vault-flag/tasks.md": "ec78a73420747331b74841b6cdfaa521d6425637b64a5cb531b1c7f5055a58e0", + "specs/archive/001-reorganize-cmd-tui/checklists/migration-safety.md": "f04935aec9860e70ebf58a5bfa54312b3ac46a6d655afcd68fff4f7514191ae9", + "specs/archive/001-reorganize-cmd-tui/checklists/requirements.md": "4569dc3a5363068712df776ab2a47837fb6703ceb6f8b6379c499159b7514b24", + "specs/archive/001-reorganize-cmd-tui/plan.md": "5858b239ad711b8eda05a9a84b356a03faa8a1fe3d735912ad342ca43cc762fa", + "specs/archive/001-reorganize-cmd-tui/quickstart.md": "92ca7d338dfbf20d195d3818188ee6d302203c5a592cb57b0665cbaffa40a077", + "specs/archive/001-reorganize-cmd-tui/spec.md": "026879d1383b5d95a3ef5332146c656858bbd72a9eac5d485cbc9d5ca2a66cd4", + "specs/archive/001-reorganize-cmd-tui/tasks.md": "0bc12e8f84098f2664a9740fee5c724b92ea96b65c50dfe7e649c1c696bfb9c9", + "specs/archive/002-comprehensive-documentation-restructuring/checklists/requirements.md": "c854bd4455fdb3ee0917232294291e7907a9fe516f912088e0f97911fe56040f", + "specs/archive/002-comprehensive-documentation-restructuring/data-model.md": "262177e2e175ac1af596630788161c65e9119eeda39cac39296d105e1c92c161", + "specs/archive/002-comprehensive-documentation-restructuring/plan.md": "5522512ba4ce2cf0eeba3a9338ea41f99010721765933670481eeabd904c8513", + "specs/archive/002-comprehensive-documentation-restructuring/quickstart.md": "c84eb6967b65adcb7bc2d1ac3fab82c0bef4d6c1013069297ee284174ee9cb6f", + "specs/archive/002-comprehensive-documentation-restructuring/research.md": "f122a9846c10819cecc86ca47751f5316c3d01bff6c6fb9571e7e1b0d4eff2c4", + "specs/archive/002-comprehensive-documentation-restructuring/spec.md": "b72bb64dc75bf61c3bff03aada4e35bb9d9516ef96fe913af185b596990869aa", + "specs/archive/002-comprehensive-documentation-restructuring/tasks.md": "484a03834364ec6cbfbf21c7971b6a92c46a00af6033fcf20b2db6701ca769f8", + "specs/archive/002-fix-untested-features/checklists/requirements.md": "ac94492cc31a31cc1bda63c6f89b81eb3030ee4168ad24d83f769da47255d04b", + "specs/archive/002-fix-untested-features/contracts/keychain-enable.md": "348fe1a8fbe428ef6f6967e5493008c6e665f27651a39043caf198a97321c02f", + "specs/archive/002-fix-untested-features/contracts/keychain-status.md": "e719155a6e05d64e077ea661d716e51f4e245207df82a374e575ea8fce2f1c73", + "specs/archive/002-fix-untested-features/contracts/vault-remove.md": "f808b94e94526aba52bcec5148d0f4753387ba25b61c3e86d9c60e873d385e9d", + "specs/archive/002-fix-untested-features/data-model.md": "069583fb7032d126ff5e2d812a67fcaaae998325c449a3b5862e24f55620cb71", + "specs/archive/002-fix-untested-features/design-improvements-post-spec.md": "68f8b9cd6ce505011ce0db405e2dbbc6f7c2aa4dcc0d60a884869790a3047d8a", + "specs/archive/002-fix-untested-features/plan.md": "99423f57c86f06551fa9ceb42901e8dada520734f46a6cf65302adc5d455f9ba", + "specs/archive/002-fix-untested-features/quickstart.md": "6b228cbd40c40b4f4cd33a302b790ee7625124987d4945668dc1040ee9d9f91f", + "specs/archive/002-fix-untested-features/research.md": "ad59cefdb4cd0d34df9251b4e1b5f660be8f41b02dbc2765afdec4349eeb76f0", + "specs/archive/002-fix-untested-features/spec.md": "a1ad70bbc3922e5f5ec9aa93754e9125d57bcee28e22a18468a5501fd468ecf7", + "specs/archive/002-fix-untested-features/tasks.md": "fb9fdb34eebe661fc4cf1bd302aeb5d38e9873f2291af095a4ad352ac33a5409", + "specs/archive/002-hey-i-d/checklists/requirements.md": "d93b7ca4ee23dbb3a05f3627ac1c3a63b10a1134e984815f8d17fe05b4cb2886", + "specs/archive/002-hey-i-d/data-model.md": "cf237510ac9cab6ad22c074d54a0a2463df60f1ede44da7740b569762282a2a8", + "specs/archive/002-hey-i-d/plan.md": "0e660b20fab7620e431bd9a6b24eb2ef5770fb574c5298f381ee6d12cdfa847f", + "specs/archive/002-hey-i-d/quickstart.md": "981710f8da7261d6bfe45c86d9bdb939f55f473c3e589ffbae7ba4762b22043d", + "specs/archive/002-hey-i-d/research.md": "374b812a49a3372a0928b274bad0de97bacd556ee4d267a519fcdf9c0d7cbd01", + "specs/archive/002-hey-i-d/spec.md": "3da2551c83ec24938e0a59cab3e9563b066fd1fa6a7915e27bf7e5a45226e985", + "specs/archive/002-hey-i-d/tasks.md": "cb0052b478605b8582a80f0629b7d0e43106dd1c02dca74a923accaf2121ba39", + "specs/archive/003-bip39-mnemonic-based/checklists/requirements.md": "f47340370cee2f4d10be732c626eff39f16e575e6d4208db5a668dd2789b6268", + "specs/archive/003-bip39-mnemonic-based/contracts/recovery-api.md": "83203d5593bb86b2c364ba318bc8ef1438290b4a305c38b51b3cf8745eb18ecb", + "specs/archive/003-bip39-mnemonic-based/data-model.md": "2ddcd80a0fdd46ddef9d733714389339e3efd94c59a7db2747da5af0e959b128", + "specs/archive/003-bip39-mnemonic-based/final-validation.md": "60df06702ba2e66e26b3e86fe67fdd37307056c5d03dddf26f37daaf54882446", + "specs/archive/003-bip39-mnemonic-based/plan.md": "2c524124ae3db71d258b8b772a1704c69da65a2c3f731ddf26d769580ea8f1e0", + "specs/archive/003-bip39-mnemonic-based/quickstart-validation.md": "0da5058c8f0eb9d7442ca88b945c17ebb8fd6f52eb07cf99bba447a764c4c7d4", + "specs/archive/003-bip39-mnemonic-based/quickstart.md": "4ab1e93777f9e7e1fd110921f7485d358ad88485f174a9a3e1923f28ed33a4af", + "specs/archive/003-bip39-mnemonic-based/research.md": "8604676b093b85abf3b94905d62476221b6ad610d107612b81f75673c77acca9", + "specs/archive/003-bip39-mnemonic-based/spec.md": "0eb0d5f289c0b5f1b3580c54988e96306e5cd50d29539ad0b50ff8d83ad4bf58", + "specs/archive/003-bip39-mnemonic-based/tasks.md": "fb6455b5abd58095a075c88f1ea07501be5d0d517f54ccc2673e783908c7986b", + "specs/archive/003-implement-atomic-save/checklists/requirements.md": "db1ecccf06ab0952862d250b678fadef353d210f6f4b1269073a946d4f64d238", + "specs/archive/003-implement-atomic-save/contracts/storage-save.md": "58bb32b71bffeaaa628684293459f8cebfd58bb69aa11ef99dfac892bd059ed9", + "specs/archive/003-implement-atomic-save/data-model.md": "07e7e7ad6ae93d0caf504ab047c8c98ad0e07673255b3a2077894a638d3aa159", + "specs/archive/003-implement-atomic-save/plan.md": "d9a583e5f8f5e95f42ded515b80b10797407087b8f3171736f2175f80a4a01b6", + "specs/archive/003-implement-atomic-save/quickstart.md": "3868ce7b107f4321ddcdbeba9e1bc1ffc9c1fe1afca5eee9036106d559b3455f", + "specs/archive/003-implement-atomic-save/research.md": "19c0c6a6842a3e37234608ec6d477d814abb7ffd1f6bef2a97f218b3f71a9764", + "specs/archive/003-implement-atomic-save/spec.md": "20f5cf017e13d3bc7a17d4287e2e97643f66d0c6ae21508cd6bc755929f113dc", + "specs/archive/003-implement-atomic-save/tasks.md": "b8f8719e3951f088b5a5d2cf2c93080dbe5cebe8d386228f01c4629f57c27915", + "specs/archive/003-would-it-be/checklists/requirements.md": "4f082475951eb4c3c22addfb6c291fac37a2bc669f376d2cc74c72789cf97353", + "specs/archive/003-would-it-be/plan.md": "c461bd531ea3a01975e162e62ee15628ceceddb8f4e80b58825c1817af7f5a8c", + "specs/archive/003-would-it-be/quickstart.md": "f63292b34de55ce6af7aa2559ceea7d0984d76c2e7d27548e3af29dc02ff08af", + "specs/archive/003-would-it-be/research.md": "f38288af0ae3c418486b759b3c15f35f419390fc28cd509cf56b944029c66120", + "specs/archive/003-would-it-be/spec.md": "b8878867d47909f0f7e9e97a6e6517423a2e4368ae8e22ad4d59bee350dcaa14", + "specs/archive/003-would-it-be/tasks.md": "0df95aa365d128b83292df904ab5884370586e6cbda5b4e5b0a06833287636a1", + "specs/archive/004-we-ve-recently/checklists/requirements.md": "2c5cd6b9d441e8fc14fb2a6d0261a4b071e81f8e2c170b85d3dbfdec4341b664", + "specs/archive/004-we-ve-recently/contracts/tui-usage-section.md": "c90048389a98cea14f7686c842ec03c44e1c155a67715314899a7240324ab500", + "specs/archive/004-we-ve-recently/data-model.md": "6503b739589b7dd8c75ba642ef7d6e20ef1642307095b1b8c069a1e432799923", + "specs/archive/004-we-ve-recently/plan.md": "d0c5de244bc0ab235a0f3850b8ddaae1d1de5da9b4ffdec5f338843a34477478", + "specs/archive/004-we-ve-recently/quickstart.md": "634ba11d00be560b933213cc405883d082f832b2dee82b6a1bea860a71ab5239", + "specs/archive/004-we-ve-recently/research.md": "5cb1c1e3e81e8c9f32f40c39e087715dda7f7f36196148740b4a9dbd74bade9c", + "specs/archive/004-we-ve-recently/spec.md": "2fd2f5075b70f463d6e19af569897f10bc8bbb78d8c881feea83107c756bb8cf", + "specs/archive/004-we-ve-recently/tasks.md": "48942618204539eedccee78fc0478066241ea73353de2345ca5ebf15df3f52b9", + "specs/archive/005-security-hardening-address/checklists/requirements.md": "8a3c972e32bb30adcce0278d25506ebb34302c1ebf73e174e3ca203178a97457", + "specs/archive/005-security-hardening-address/data-model.md": "daa06fc69e4fd01bb7f73f5cc5d7276eb27007375b8cd16701849e53d6f069b0", + "specs/archive/005-security-hardening-address/plan.md": "2d003dd5c25eaf3432d79c4fa90a6cccedbabf81919b4e7559835310e8ab1906", + "specs/archive/005-security-hardening-address/quickstart.md": "1539202a8c8177a7cc8ba696bef11c1674bf0a602f86db3f29bd7d0ebe8ccfd9", + "specs/archive/005-security-hardening-address/research.md": "21f8e3c930a58a9368f8ba8c1f794baa279132cbb3d8d8fcd83dd5b76d92861d", + "specs/archive/005-security-hardening-address/spec.md": "352d750774c3a6bd7306979ed59f718bb404914d60eb0c0a6948f728fa3457fa", + "specs/archive/005-security-hardening-address/tasks.md": "e80ed8391beb64faea7382aee14355ed6fa2ac0a6588f6ff63d766a7588232ec", + "specs/archive/006-implement-minimum-terminal/checklists/requirements.md": "55217e3e22c746786d0efbb988ceac4099651288188b0e2ce0324b01f6697c3b", + "specs/archive/006-implement-minimum-terminal/plan.md": "3d71b3d2da2d70492c26f22d0ebde64068c9720073ad6895b19859376a132986", + "specs/archive/006-implement-minimum-terminal/quickstart.md": "913a4c3977f2fa01003a7aa04f563c2226ed8cf922b28c4aa035120f992075ae", + "specs/archive/006-implement-minimum-terminal/research.md": "471088d59ef143d0c8ae1bd618b1365c38a62a9485ee5f6dbb84ac17025a4274", + "specs/archive/006-implement-minimum-terminal/spec.md": "e2f24e50e5743b75e42c046a6526370eb73d998cd36abc3e5ef12ecd9c837028", + "specs/archive/006-implement-minimum-terminal/tasks.md": "3d3ff40bfcb1c6854b65f5446a9665a339a2716ef9d3555c74ac6a1de4170867", + "specs/archive/007-user-wants-to/checklists/integration-testing.md": "a8b1bf98aa0adbb2ba847792131f33bc80b2aada5b345a0820dcba8f08e8d9dc", + "specs/archive/007-user-wants-to/checklists/requirements.md": "f8c8bc53ba1e19a72cae47519d98940afcd1d621f0c6296530f7edad46ade533", + "specs/archive/007-user-wants-to/contracts/config-schema.md": "ed5593788f7f331f1f56f7722a6d7536fb357fbe492abea832db949cf0191129", + "specs/archive/007-user-wants-to/contracts/config-schema.yml": "c1c5c287df0bd9ded2228b8feec2d6dc11b2dc7e66a10c9bf94a46dfa5c20451", + "specs/archive/007-user-wants-to/data-model.md": "beeb225c16287773fa0c7a56c7a9b065d876bf0cc1aeaf19ad0aff27b04acddb", + "specs/archive/007-user-wants-to/plan.md": "8184e5ffc3a94e07c13e0119d7087b7992c2c951d8f0fd37c83a364141c7a34f", + "specs/archive/007-user-wants-to/quickstart.md": "16937a0b5f1c9c278b9f73345f452bfd241f86fe327c9fcaa0359daaebd66e6f", + "specs/archive/007-user-wants-to/research.md": "61314e5761e8ef6318ceffdc63e42b5f87286294c33d49dd9115433a05fc0e13", + "specs/archive/007-user-wants-to/spec.md": "c0139cf7cfc9cc7f9dfa40fe669ddd475b79af71d15600fba1bb12b8a58a52e5", + "specs/archive/007-user-wants-to/tasks.md": "e5451504ab60e0b43d4b74d8b046a14433a075537bbcb823fc8e66322467486a", + "specs/archive/008-review-and-update/checklists/requirements.md": "7083e4b45b9d7e281de5202cfcbb44627aa7b388dbbeca07a31ce875b2af7743", + "specs/archive/008-review-and-update/contracts/documentation-validation-schema.md": "532d37d9cb20269f9ae08a8da4a3e77ad86542401e5b3ad20a8d675e98a6ef13", + "specs/archive/008-review-and-update/data-model.md": "1c675f9d76f361d3c7880fa5b7f97cbbe5ca72908f47e80cdb151f2dec03f384", + "specs/archive/008-review-and-update/plan.md": "675894252ae5dc31975e782445bbc61ccd4834d0c82eb8119ef751ad092bcd73", + "specs/archive/008-review-and-update/quickstart.md": "1a182277c0b6a4f4461882c60559d56e84916166ec86695dfbb882f10187dc5e", + "specs/archive/008-review-and-update/research.md": "5ee24a521c4f6d4d4a624451e58639f2f1ebf03f289aae5b8606a26bc7b3b8e5", + "specs/archive/008-review-and-update/spec.md": "9dac1077878d49976fa8f242cdcb0b1ee895e232fa084ca0f7e59a9d4857fb7c", + "specs/archive/008-review-and-update/tasks.md": "331c9255b0d0cd3099ff083cb5ea7c312ae3d16dddaabce5a41bbf1023b78adb", + "specs/archive/008-review-and-update/validation/command-tests.sh": "2586b0c158472d7caaa26b21429707a0b0015618334fe8eea8c62af9481d0b85", + "specs/archive/008-review-and-update/validation/cross-reference-check.sh": "eeeda0aefb73126008a90cc3161689dc16f0be6975fa83473a6b9c6e76126f8c", + "specs/archive/008-review-and-update/validation/link-check.sh": "0652367b0d38c93c12292a2f5a5d92018d3095a4f554833a9686c96e94a3cf49", + "specs/archive/008-review-and-update/validation/run-all-validation.sh": "133d8dc4d12af987057d136a711f501f43905f7d82815e9d48572ac3454566f0", + "specs/archive/008-review-and-update/validation/tracking.json": "550a43b384238e5e4f0d3bd5055c76fd71e0b3130a77d83cd72c3466507441d3", + "specs/archive/008-review-and-update/validation/version-audit.sh": "1e5568339e00b690cc008561b1f1bef69a3afdf6c2e49b7831c3f49992a98071", + "specs/archive/009-documentation-cleanup-and/audit-checklist.md": "bca75b0b9dcf0afac4865119d3c8825e2d99e19a4e0d0d1854d0424340e312b8", + "specs/archive/009-documentation-cleanup-and/checklists/requirements.md": "d2f7086c9123d533f852bd551bb4c16b73f6121988347c479ebf500f95744f2b", + "specs/archive/009-documentation-cleanup-and/plan.md": "536d932b93d2f69f2d7031f6ea9a77dc4f729cff1ddd8ca2f53389b4fd85a329", + "specs/archive/009-documentation-cleanup-and/policy-structure.md": "a431139b0f3277a39831cf814ca3feca033eced5ef865b7689f2ba0149685cad", + "specs/archive/009-documentation-cleanup-and/research.md": "fdeabe57535d9dee54559f2fb0bba648f3adab4b7a5f1dd288fc95192a64b4d1", + "specs/archive/009-documentation-cleanup-and/spec.md": "6d8a4f2fd94ff16a105a9187806eedfa10c0ad2c56ddd86105b0b41bac1371f5", + "specs/archive/009-documentation-cleanup-and/tasks.md": "fed11c53f257718025b1f45993fcb0e577cc8aff796d43c203251084c9cbf89e", + "specs/archive/010-documentation-accuracy-verification/audit-report.md": "62c31ec758e700def622c6bc512c5d24875c9d9712419afab36faefe12d3b930", + "specs/archive/010-documentation-accuracy-verification/checklists/requirements.md": "70633a978723a03872279a1ef8a9705e9a9dab4e248b521d7098e11d73abad7e", + "specs/archive/010-documentation-accuracy-verification/examples/migration-bash.sh": "882cf3287f6e64ee6e2f78bb63aed391f444c08d322e28d9b5c1835712b3180a", + "specs/archive/010-documentation-accuracy-verification/examples/readme-bash.sh": "b8ed1abecc98e11fe53b11d324133daa452651bb903af35b1af09c53f25262e8", + "specs/archive/010-documentation-accuracy-verification/examples/usage-bash.sh": "5b82c9c8e75c93b7021ab67fe8ad873b5677ca441c9970bfdd56826ba28c01f0", + "specs/archive/010-documentation-accuracy-verification/examples/usage-powershell.ps1": "dfc5ef7987d5af4cc44559acf9919853f7ab15f8db84c1b63d1407d8a5feacb8", + "specs/archive/010-documentation-accuracy-verification/help-output/add.txt": "e30d2019925568bc2914f0bf0157083ba9d979fa24d9f58a3e2d91dd3e0f0909", + "specs/archive/010-documentation-accuracy-verification/help-output/change-password.txt": "ccde93249bcc8b96e8d95cb79293a59c72824f0f484a8d7cbefa4dde5cfe84a7", + "specs/archive/010-documentation-accuracy-verification/help-output/config-edit.txt": "52921f0e7bf2a69cb23cc5c006b40d55b0491e5986710d23c2f33c234a4acb72", + "specs/archive/010-documentation-accuracy-verification/help-output/config-init.txt": "e83a3e7a159505247ba50d3425c095e7b457e229b43119da0cf5a0add0ae2857", + "specs/archive/010-documentation-accuracy-verification/help-output/config-reset.txt": "80c007b1ebf387ec54f2357b1bdcf3bc330639fc95c5b0325b30d1c0320c9798", + "specs/archive/010-documentation-accuracy-verification/help-output/config-validate.txt": "1e0d6cce38c6a5973771b36c3a14f44f1caaa1014917cc00a140526e83b73281", + "specs/archive/010-documentation-accuracy-verification/help-output/config.txt": "b13a8e83c339103eed6f5b521d0c6e0c519e5d40406bce9ee3acb238589b14c0", + "specs/archive/010-documentation-accuracy-verification/help-output/delete.txt": "af8ec41b9f742a185b9556a87cb114104b5f836487da5bb215722baa9b7278b6", + "specs/archive/010-documentation-accuracy-verification/help-output/generate.txt": "9954d6b774cb1c9c2e2cbc7e0651ca1f547dab70962875daa3e306dd0e6dc36d", + "specs/archive/010-documentation-accuracy-verification/help-output/get.txt": "16317167943e549aff5342e4f8f8a165b7f336ecf3a6857193bef7c87ce85e69", + "specs/archive/010-documentation-accuracy-verification/help-output/init.txt": "baea8be8c79feeb36fce5ac5ad1c84a4cb0a244f6af49dbe55ab50aa0f42ca74", + "specs/archive/010-documentation-accuracy-verification/help-output/list.txt": "40a95f04df54307c0f14f47fbdfa8dbab67a56942861ccae73b600d1b8b1e545", + "specs/archive/010-documentation-accuracy-verification/help-output/tui.txt": "a6bb8649bbac0c2866f2477e631d27e2a677d039741fcfb73b90dbebde7be614", + "specs/archive/010-documentation-accuracy-verification/help-output/update.txt": "8a6f58cac4a36e0c51a37c6947dd01e7cf40ad5abc1fd3687e2789aaffbc45c7", + "specs/archive/010-documentation-accuracy-verification/help-output/verify-audit.txt": "f4fbbd5684f873b454182608d31824fb442aaa336afe01753297b7de49e3d212", + "specs/archive/010-documentation-accuracy-verification/help-output/version.txt": "6a18ea7b85e4fb8f8a6c0141f00dee2d2d993340da92ae59ac742a848e6e4424", + "specs/archive/010-documentation-accuracy-verification/migration-script-test-report.md": "da3b93f5170f0e81e579de5f237f751daf8852c613ea9e8ebb57a4295fc8c9c1", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/manual_tui_test.md": "88c61d58c1a178a492311aeccd42881189c0a4afcf6c4dcd1b8b1c053d3c271e", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui.exp": "bdadb8c3892e22a2f223f63fc13bc0985aa4081c0fc6615612efb807367a097b", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_comprehensive.ps1": "422906835ee81d897481b992545272e83e9cbd0dc5bfddbfc76939e39d07c9be", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_simple.sh": "d073a6edc78d70b6a5eb23d664ca64310acf03cd7d7119b3e1fc0a9a00b8d526", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_analysis.md": "01348fab2aa1ce4d8bbf65fe3dd523da21abfba6c1e41aa60d871b55f787c2d7", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_test_report.md": "dcaf42e4472f1270ac6e80b601c3ca0ee0687ee75b04fb1b16f603756883251d", + "specs/archive/010-documentation-accuracy-verification/phase9-findings.md": "f02bef81dbbd6543fd10ac30894843a9214d9c2b29051c2578d8475fcc1ca761", + "specs/archive/010-documentation-accuracy-verification/plan.md": "ba76026ade27b1a6f516650b6cadf9d9c7c564bb9a6777be8661f01462cf3259", + "specs/archive/010-documentation-accuracy-verification/research.md": "05193c3ec5851bd78f15d638ec61eb9b57933304d2a7efc575c711b4481f2a4a", + "specs/archive/010-documentation-accuracy-verification/spec.md": "fda0f88cfa7000e6f24f3bd2092b479007b37be195fea14be937be42ef44d4ae", + "specs/archive/010-documentation-accuracy-verification/tasks.md": "2c0ce360442edfef04e271890f2d5978487c79a34a299d1b52a5e45277ebad35", + "specs/archive/010-documentation-accuracy-verification/verification-procedures.md": "e8247f69c2511b8c10609102bfd6c635db688a24f450d1ff038aad98f708a5ad", + "specs/archive/011-doctor-command-for/checklists/requirements.md": "766c45ea904c928a9962db1bdc2a38da742533f89daecc827d5d3076ddaf2f27", + "specs/archive/011-doctor-command-for/contracts/doctor-command.md": "d99e08a7822b85a6ec4cea8533dde91112ebd6c973418ff000aa66b78027f3eb", + "specs/archive/011-doctor-command-for/contracts/first-run-detection.md": "958ce1ec2facca6e237edda50f00f68c1703557f4902d2eaf0306be401513a78", + "specs/archive/011-doctor-command-for/data-model.md": "d3556e4d3f665df7285b7a63cae0d01b9616cd695b0253e5ef01e5d8b3bda7ba", + "specs/archive/011-doctor-command-for/plan.md": "50c777251120d3844083547b34eecd4cce35ffeffef5430083a972276b455416", + "specs/archive/011-doctor-command-for/quickstart.md": "d487f6fb48394ce3cbb092605ec232ab4062d1e6e190ab87819c7acfa898d974", + "specs/archive/011-doctor-command-for/research.md": "9499aa2e0cf3b97c1565f26ec4b8a0afdba19d709a6f2d19fa9ca2d6378c0c73", + "specs/archive/011-doctor-command-for/spec.md": "7d28992d8bb187fdfef0c734f7149dcdc79ec2f1147a6f0b131eeb611bf23809", + "specs/archive/011-doctor-command-for/tasks.md": "7b68f15a9e552193df455581cf52f634435351d915828c1f741b5eecb5b12cec", + "specs/archive/011-enhanced-usage-tracking/checklists/requirements.md": "d4777e57311181aa5087961704627195b26b6bceb0361031d62749265ac0ecc1", + "specs/archive/011-enhanced-usage-tracking/contracts/commands.md": "02f7c76742106c3d9624c1da558b4cec7bfabb59c9436772d83afa76e0647726", + "specs/archive/011-enhanced-usage-tracking/data-model.md": "0a17f7ff2d02ffc5c88058acebf23f510835ba24736ca8b2aaa34c0457daacb9", + "specs/archive/011-enhanced-usage-tracking/plan.md": "ef36f1782975e4c762a08284592d26bb403013c0ff770a18163478aa0618af04", + "specs/archive/011-enhanced-usage-tracking/quickstart.md": "495f2def63896d4d6f794b80b8ad679606324b22723425144b90297ccd177324", + "specs/archive/011-enhanced-usage-tracking/research.md": "f695d050a644d043aee491748fffd484c78410af476d3312bafc154a3593304b", + "specs/archive/011-enhanced-usage-tracking/spec.md": "263cb6ad2bc1e287813aca8eada7c4f5c34365c1d11c87b05bfac2bd0d30f8ad", + "specs/archive/011-enhanced-usage-tracking/tasks.md": "67250729cb876f30539e64157b6ff3b1bc52ebe355a701646b22608bb8a352e8", + "specs/archive/011-keychain-lifecycle-management/checklists/requirements.md": "4cd7b8b9a12253d2a7f4ec12d5a7e2c78b3ef1d85dc5e691536d2f2680adecd8", + "specs/archive/011-keychain-lifecycle-management/contracts/commands.md": "a74568f84f5cc474b398a8966ffde73ceab263f173a9e42eebb9520510d16683", + "specs/archive/011-keychain-lifecycle-management/data-model.md": "7d4dd16012fb1c28a24bb87dc9661019aceff9fe3dda7f661eaff9507439dc33", + "specs/archive/011-keychain-lifecycle-management/FOLLOW_UP.md": "761a0a2d3d0e257a0f9bf5da30680d09597e2ad4493fa39e169eea41f247a335", + "specs/archive/011-keychain-lifecycle-management/plan.md": "ebac0814cf3d238ac29cb63354ff64c729d227c4b2ab10a0f0cfaba9bf52ea6e", + "specs/archive/011-keychain-lifecycle-management/quickstart.md": "e763365077135d58aaaaf966254276a1b60bbf36fabb248913e72cf1b55cc93b", + "specs/archive/011-keychain-lifecycle-management/research.md": "901698cb066b7364b53e8e59a57371a07c355dbb27f641667409d265c87e57c4", + "specs/archive/011-keychain-lifecycle-management/spec.md": "dcd18e20e60d3f9f71abd8b760a77617d76535a3233e5255f99dba72f208db3c", + "specs/archive/011-keychain-lifecycle-management/tasks.md": "204d4c2572e77fd4d5fdd2bb16ffd9f5ebe4d8000916400da6c9d397c53d2775", + "specs/archive/012-vault-metadata-for/checklists/requirements.md": "6abaf4ba567331174c503b8f6480c3a6d766b71de4745854e9417656d9b4a9f3", + "specs/archive/012-vault-metadata-for/contracts/vault-metadata-schema.json": "f373760db88ea988ad88532c9c690f0714c93613402ec21a33565ec8950a2dad", + "specs/archive/012-vault-metadata-for/data-model.md": "bb7af1b0e5f57d01dc43664007279dbbe1ebd9575f3d5b2c352c23aec879b96b", + "specs/archive/012-vault-metadata-for/plan.md": "9f3049e89071f47a0df5e1b7d3348fa8e8209e62a0feae02a4f81fc1ef71dc2d", + "specs/archive/012-vault-metadata-for/quickstart.md": "9ef9a5255ec0d10b987fd86650b58c51c0eea0a562ad8a222bd5c31322cd1996", + "specs/archive/012-vault-metadata-for/research.md": "4f9e314a2a89c34f0365f856045e36220881f760e2498e8c086a6db45be996a4", + "specs/archive/012-vault-metadata-for/spec.md": "9e1ba54adbe86b4af5ef0206593bbbbb0d1ab704db2f2382f40b02a0c9ccce99", + "specs/archive/012-vault-metadata-for/tasks.md": "7550706a28c4d4513d80487535158cde87475197e8e08a28107de17ec711a90f", + "test/atomic_save_test.go": "8899156e6846e158b0efd43b7891d6ce82bdeba7f6a817661d48af126b642658", + "test/doctor_test.go": "bbf46a79e7ac507a3ed800ae317afe9dc4b8166f1bef76e27c523dafa7922b68", + "test/firstrun_test.go": "605432d1fc944dbe760448acab1f9b9b1875b13dda908783db78e37b2dcff58a", + "test/integration_test.go": "800dd5c3b91d017005dcfa018e5a1caaf80249f51f168404d5e465dfffcb62bb", + "test/keychain_enable_test.go": "46bba293329a73ca81b4fddcde745ad0c9c253cf2dd143440fd233fd627980ec", + "test/keychain_integration_test.go": "da45de629956b779b6de54b55808f1dbbac5d830fd86c58b0813be83ec819345", + "test/keychain_status_test.go": "35c4e9db5f6171be10e1c9e6c3b92665e2856a6277495807b0e223a67e1fa4d1", + "test/list_test.go": "73f30bf8af6e4f56f1d584c851fea4565f6245121ae82a26e6910fdd6b4517dd", + "test/README.md": "d6c80a3e2e95b22e40d00ce7ace5edb084c43c8415788ccb4c9c2fec8511a99d", + "test/recovery_disabled_test.go": "2513ceadd6049a8547c9f7a7995da2d8a34cb1cb1fc647298059b98e9d53af6a", + "test/recovery_init_test.go": "df5541829fb0e72abe038a69f9597cbfc58e23fac28ead638b7ea4d351a88bd1", + "test/recovery_passphrase_test.go": "718c6ee6733e94cc90edf73ac6184443f19348017d721fb0a1f8b50061a6fc4d", + "test/recovery_skip_verify_test.go": "770e2188155f9def4c151e863e7d0ae976baf026deb4037ec4658b82b4d79f60", + "test/recovery_test.go": "c658eac1fa3410e15b993b5224c83646af67ea847dc7fdb87dbe172417e073ec", + "test/setup-tview-test-data.bat": "050e42da469667b7c03a8a8b9a9a990c87b7a6e012a9b8bf6019ccfb4f8593a2", + "test/setup-tview-test-data.sh": "a189685772e83a96de1476e9c4c57a294a65fb73951a644ccfaf0ff9f9656b22", + "test/test_helpers.go": "96e0ee582d79f203f3d56335569e03e9f91eae5d50dd20c5d18d6d83c5a4ecea", + "test/tui_integration_test.go": "8116e2cfc34a384fe379f1973a5caaac4faaea61d5b18dfb058cb6f086d270cc", + "test/unit/config/cli_test.go": "6bfd2de12107a248ee0b15098691a9f10b51e6b4cd01dd6ad25979681af3a260", + "test/unit/config/fixtures/empty.yml": "1f377baee2cd862654ece6ce4e73e4cfb159ead81325426da7e6a90bc82eaedd", + "test/unit/config/fixtures/invalid_conflict.yml": "8653b33df3dd1b4baccdeea395fa1c4a6d0336a4101b37fccea2c4e699605895", + "test/unit/config/fixtures/invalid_key_format.yml": "cd0c2921c5617fca031fa8fdc73ab906f7e2e703979665ab737a5ce47d1ffab0", + "test/unit/config/fixtures/invalid_terminal_size.yml": "6b5ed881a807489f9d237316e1fbde7c1ac6c104a1b7d0d035aa940f2c8aa27b", + "test/unit/config/fixtures/invalid_unknown_action.yml": "8ba5216a6be23e14932ef6319d82e47ea73bd35a317bcb0079b014c3a3cf3aff", + "test/unit/config/fixtures/partial.yml": "f3602cd2f360d7d23ddaac3992ca72d6c673a9afbcb78290ebad5935f68fb5c7", + "test/unit/config/fixtures/valid_custom.yml": "8878fa1d6006e4fd14aeabc08eef590b152f1ac75cc8f03c8c8490eda5e5ef78", + "test/unit/config/fixtures/valid_full.yml": "703ee00474fd76530f9a167b42afb9585ad163381fda0186827a7f3895ec93a1", + "test/unit/config/fixtures/valid_minimal.yml": "72490875a6d2a7cf43bc97ce88336a7b5766ed7217f72c24dabcc55c741814b2", + "test/unit/config/fixtures/valid_vim_style.yml": "591dbba4b17f77277bf2447187ceeb226036909ca138842f7f4fc3365f278e05", + "test/unit/config/validation_test.go": "cf78b364e4bc29bede1186c76bc10ca156fde5d16f9fcdf859e7c000ff739684", + "test/unit/recovery/audit_test.go": "b0a2ba2869615926898ea80ec8ef1a3d9c1194cfda0a58eb4e4c44cf7181339b", + "test/unit/recovery/bip39_compat_test.go": "5f1403a5afed270c5b80de41c619d031349f3d4b0657be0c4495dcd5ae4a822a", + "test/unit/recovery/challenge_test.go": "64e0a72e2ad28a04e5a6b251be59c9452066731af4e3f4844bd3bf2eaf776d51", + "test/unit/recovery/memory_test.go": "007057986b6926c47318ecc0c14e96f848fc149615bac53b453936ca60d96ae2", + "test/unit/recovery/metadata_size_test.go": "aa3107cf4f19ef575fb7709fc0b7b7117665db42f11a7f1b5391159a60b3bca0", + "test/unit/recovery/mnemonic_test.go": "1905bd1447fbfb0a44dc9fb7804dbf1fe76189a09fceb1a599c25607f9bd56c0", + "test/unit/recovery/recovery_test.go": "4b78990be40ebdde302faa9a2309b01effb778b90b4c3ba11500e622a4ea2e73", + "test/unit/security/clipboard_test.go": "7295f991acca5967b635f492f99bf783efbb23d0a0bc093e5d0491d047332c38", + "test/unit/security/input_test.go": "cb9e1da709c8ec32edc0a25df9c1287a26877f88ac7e30bcccb195a67db46e6a", + "test/unit/security/memory_test.go": "677dc32bbb25c83b3b881a42fb7f1d688266509130c00ed8433667d59f08c269", + "test/usage_test.go": "b5e723e7d839534de4514c5e1a0781aa0faadf4a1a58cb5fb4e6533c6d460bc1", + "test/vault_backup_error_test.go": "8fb2d2fc507a5990a96c686b1207f6c591b3d737f12c7a3fc960fbf2900704e9", + "test/vault_backup_info_test.go": "117ffd8d3dc34d215e6695b6be1cf7c0c509ab56b8a550ac6564d7313e59c472", + "test/vault_backup_integration_test.go": "6dd189c28e297a24725c3d0ae31e211c1e4f43ea22c304c541931022d043c734", + "test/vault_backup_output_test.go": "cc81eafa4a43f04b335f3982ba635b2e5226bd26734a32f8c2255dce6421187a", + "test/vault_backup_performance_test.go": "f3317b907e682f1edccf4b87e047050061e60c09a2e8a0955d7d7a33a5fb319f", + "test/vault_backup_platform_test.go": "9e38a2729b705d4981e5de3d7a8ae296df0924f5327cdac0c164b0f26bf7734d", + "test/vault_metadata_test.go": "f56924fd9fdbe3c82e38bcb5cc35dce197a0e69f0cebc170b4f9de44c59831d6", + "test/vault_remove_test.go": "94f52716b9fd8961e892bb1ebad6c24dc7cf112b89a4880b9fda130d83b271d3" + } +} \ No newline at end of file diff --git a/docs/_index.md b/docs/_index.md index 1fd9c91f..de02b843 100644 --- a/docs/_index.md +++ b/docs/_index.md @@ -11,7 +11,7 @@ Welcome to the **pass-cli** documentation. pass-cli is a secure, cross-platform ## Quick Links - [Quick Start]({{< relref "01-getting-started/quick-start" >}}) - First-time setup and initialization (5 minutes) -- [Quick Install]({{< relref "01-getting-started/quick-install" >}}) - Installation instructions for all platforms +- [Quick Install](01-getting-started/quick-install) - Installation instructions for all platforms - [Command Reference]({{< relref "03-reference/command-reference" >}}) - Complete command reference - [Recovery Phrase]({{< relref "02-guides/recovery-phrase" >}}) - BIP39 recovery phrase setup and usage - [Backup & Restore Guide]({{< relref "02-guides/backup-restore" >}}) - Manual vault backup management From c75c76dfb07561afd772dba79481c69b23b6efb4 Mon Sep 17 00:00:00 2001 From: Ari Date: Mon, 17 Nov 2025 13:51:48 -0500 Subject: [PATCH 02/19] docs: convert Hugo shortcodes to standard markdown links - Convert relref shortcodes to standard markdown (without .md extension) - Add Hugo render hook for build-time link validation - Links now work on GitHub and in Hugo site - Render hook validates internal links at build time - Update doc-manager dependencies and conventions Benefits: - GitHub compatibility (links work in repository browser) - Hugo validation (render hook catches broken links) - doc-manager aware (though has limitations with Hugo paths) - Portable across markdown renderers Generated with Claude Code Co-Authored-By: Claude --- .doc-manager/dependencies.json | 1979 +++++++++++++++++ .doc-manager/memory/doc-conventions.md | 2 +- docs/01-getting-started/quick-start.md | 2 +- docs/01-getting-started/uninstall.md | 4 +- docs/02-guides/backup-restore.md | 8 +- docs/02-guides/basic-workflows.md | 4 +- docs/02-guides/keychain-setup.md | 2 +- docs/03-reference/command-reference.md | 24 +- docs/03-reference/migration.md | 2 +- docs/04-troubleshooting/faq.md | 2 +- docs/05-operations/health-checks.md | 8 +- docs/06-development/ci-cd.md | 4 +- docs/06-development/contributing.md | 2 +- docs/README.md | 16 +- docs/_index.md | 14 +- .../layouts/_default/_markup/render-link.html | 26 + 16 files changed, 2052 insertions(+), 47 deletions(-) create mode 100644 .doc-manager/dependencies.json create mode 100644 docsite/layouts/_default/_markup/render-link.html diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json new file mode 100644 index 00000000..633490e4 --- /dev/null +++ b/.doc-manager/dependencies.json @@ -0,0 +1,1979 @@ +{ + "generated_at": "2025-11-17T13:23:15.383473", + "doc_to_code": { + "01-getting-started\\manual-install.md": [], + "01-getting-started\\quick-start.md": [ + "cmd/add.go", + "cmd/delete.go", + "cmd/doctor.go", + "cmd/get.go", + "cmd/init.go", + "cmd/list.go", + "cmd/update.go", + "cmd/version.go" + ], + "02-guides\\backup-restore.md": [], + "02-guides\\basic-workflows.md": [], + "02-guides\\keychain-setup.md": [], + "02-guides\\recovery-phrase.md": [], + "02-guides\\scripting-guide.md": [], + "02-guides\\tui-guide.md": [], + "02-guides\\usage-tracking.md": [], + "03-reference\\command-reference.md": [ + "cmd/add.go", + "cmd/config.go", + "cmd/delete.go", + "cmd/get.go", + "cmd/list.go", + "cmd/update.go", + "docsite/public/en.search-data.json" + ], + "03-reference\\configuration.md": [], + "03-reference\\known-limitations.md": [ + "cmd/tui/events/handlers.go" + ], + "03-reference\\migration.md": [], + "03-reference\\security-architecture.md": [], + "04-troubleshooting\\faq.md": [], + "04-troubleshooting\\tui.md": [], + "04-troubleshooting\\vault.md": [], + "05-operations\\health-checks.md": [ + "cmd/doctor.go" + ], + "05-operations\\security-operations.md": [], + "06-development\\branch-workflow.md": [], + "06-development\\ci-cd.md": [], + "06-development\\contributing.md": [], + "06-development\\documentation-lifecycle.md": [], + "06-development\\homebrew.md": [ + "homebrew/pass-cli.rb" + ], + "06-development\\release.md": [ + ".goreleaser.yml" + ], + "06-development\\scoop.md": [ + ".goreleaser.yml", + "scoop/pass-cli.json" + ] + }, + "code_to_doc": { + "cmd/add.go": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "cmd/delete.go": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "cmd/doctor.go": [ + "01-getting-started\\quick-start.md", + "05-operations\\health-checks.md" + ], + "cmd/get.go": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "cmd/init.go": [ + "01-getting-started\\quick-start.md" + ], + "cmd/list.go": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "cmd/update.go": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "cmd/version.go": [ + "01-getting-started\\quick-start.md" + ], + "cmd/config.go": [ + "03-reference\\command-reference.md" + ], + "docsite/public/en.search-data.json": [ + "03-reference\\command-reference.md" + ], + "cmd/tui/events/handlers.go": [ + "03-reference\\known-limitations.md" + ], + "homebrew/pass-cli.rb": [ + "06-development\\homebrew.md" + ], + ".goreleaser.yml": [ + "06-development\\release.md", + "06-development\\scoop.md" + ], + "scoop/pass-cli.json": [ + "06-development\\scoop.md" + ], + "grep": [ + "01-getting-started\\manual-install.md" + ], + "pass-cli": [ + "01-getting-started\\manual-install.md", + "02-guides\\tui-guide.md" + ], + "checksums.txt": [ + "01-getting-started\\manual-install.md", + "06-development\\scoop.md" + ], + "add": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "get": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "list": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "update": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "delete": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "version": [ + "01-getting-started\\quick-start.md" + ], + "doctor": [ + "01-getting-started\\quick-start.md", + "05-operations\\health-checks.md" + ], + "help": [ + "01-getting-started\\quick-start.md", + "03-reference\\configuration.md" + ], + "init": [ + "01-getting-started\\quick-start.md" + ], + "pass-cli list": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "echo": [ + "01-getting-started\\quick-start.md" + ], + "pass-cli add github": [ + "01-getting-started\\quick-start.md" + ], + "vault_path": [ + "01-getting-started\\quick-start.md", + "02-guides\\scripting-guide.md", + "03-reference\\configuration.md", + "03-reference\\migration.md", + "05-operations\\health-checks.md" + ], + "info": [ + "02-guides\\backup-restore.md" + ], + "pass-cli vault backup info": [ + "02-guides\\backup-restore.md" + ], + "pass-cli vault backup create": [ + "02-guides\\backup-restore.md" + ], + "pass-cli doctor": [ + "02-guides\\backup-restore.md", + "02-guides\\basic-workflows.md", + "02-guides\\keychain-setup.md", + "05-operations\\health-checks.md" + ], + "vault.enc.backup": [ + "02-guides\\backup-restore.md", + "03-reference\\command-reference.md", + "03-reference\\security-architecture.md", + "04-troubleshooting\\vault.md" + ], + "secret-tool clear service pass-cli": [ + "02-guides\\basic-workflows.md" + ], + "jq": [ + "02-guides\\basic-workflows.md", + "05-operations\\health-checks.md" + ], + "pass-cli get github": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli generate": [ + "02-guides\\basic-workflows.md", + "03-reference\\command-reference.md", + "03-reference\\migration.md", + "05-operations\\security-operations.md" + ], + "pass-cli generate --length": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli add github -u": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli update github --generate": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli update github --generate --gen-length": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli keychain enable": [ + "02-guides\\basic-workflows.md", + "02-guides\\keychain-setup.md" + ], + "pass-cli keychain status": [ + "02-guides\\basic-workflows.md", + "02-guides\\keychain-setup.md" + ], + "pass-cli get github --json": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli init": [ + "02-guides\\recovery-phrase.md", + "03-reference\\command-reference.md", + "03-reference\\migration.md", + "04-troubleshooting\\vault.md", + "05-operations\\health-checks.md", + "05-operations\\security-operations.md" + ], + "change-password --recover": [ + "02-guides\\recovery-phrase.md" + ], + "Tab": [ + "02-guides\\tui-guide.md" + ], + "Enter": [ + "02-guides\\tui-guide.md" + ], + "Esc": [ + "02-guides\\tui-guide.md", + "04-troubleshooting\\tui.md" + ], + "pass-cli get": [ + "02-guides\\tui-guide.md", + "04-troubleshooting\\tui.md" + ], + "auto": [ + "02-guides\\tui-guide.md" + ], + "right": [ + "02-guides\\tui-guide.md" + ], + "bottom": [ + "02-guides\\tui-guide.md" + ], + "detail_position": [ + "02-guides\\tui-guide.md" + ], + "detail_auto_threshold": [ + "02-guides\\tui-guide.md" + ], + "pass-cli list --by-project": [ + "02-guides\\usage-tracking.md" + ], + "MyPassword": [ + "03-reference\\command-reference.md" + ], + "EDITOR": [ + "03-reference\\command-reference.md" + ], + "password123": [ + "03-reference\\command-reference.md" + ], + "pass-cli change-password --recover": [ + "03-reference\\command-reference.md", + "03-reference\\migration.md", + "03-reference\\security-architecture.md", + "04-troubleshooting\\vault.md" + ], + "username": [ + "03-reference\\command-reference.md" + ], + "password": [ + "03-reference\\command-reference.md" + ], + "url": [ + "03-reference\\command-reference.md" + ], + "notes": [ + "03-reference\\command-reference.md" + ], + "service": [ + "03-reference\\command-reference.md" + ], + "created": [ + "03-reference\\command-reference.md" + ], + "modified": [ + "03-reference\\command-reference.md" + ], + "accessed": [ + "03-reference\\command-reference.md" + ], + "gen": [ + "03-reference\\command-reference.md" + ], + "pwd": [ + "03-reference\\command-reference.md" + ], + "a-z": [ + "03-reference\\command-reference.md" + ], + "table": [ + "03-reference\\command-reference.md" + ], + "json": [ + "03-reference\\command-reference.md" + ], + "simple": [ + "03-reference\\command-reference.md" + ], + "config reset": [ + "03-reference\\command-reference.md" + ], + "audit-log-path": [ + "03-reference\\command-reference.md" + ], + "pass-cli init --enable-audit": [ + "03-reference\\command-reference.md" + ], + "pass-cli get github --quiet": [ + "03-reference\\command-reference.md" + ], + "pass-cli get github --field": [ + "03-reference\\command-reference.md" + ], + "quit": [ + "03-reference\\configuration.md" + ], + "search": [ + "03-reference\\configuration.md" + ], + "add_credential": [ + "03-reference\\configuration.md" + ], + "edit_credential": [ + "03-reference\\configuration.md" + ], + "delete_credential": [ + "03-reference\\configuration.md" + ], + "toggle_detail": [ + "03-reference\\configuration.md" + ], + "toggle_sidebar": [ + "03-reference\\configuration.md" + ], + "InputField": [ + "03-reference\\known-limitations.md" + ], + "string": [ + "03-reference\\known-limitations.md" + ], + "defer": [ + "03-reference\\known-limitations.md" + ], + "pass-cli migrate": [ + "03-reference\\migration.md" + ], + "pass-cli verify-audit": [ + "03-reference\\migration.md", + "03-reference\\security-architecture.md" + ], + "CryptGenRandom": [ + "03-reference\\security-architecture.md" + ], + "fsync": [ + "03-reference\\security-architecture.md" + ], + "vault.enc": [ + "03-reference\\security-architecture.md", + "04-troubleshooting\\vault.md" + ], + "change-password": [ + "04-troubleshooting\\faq.md" + ], + "Backspace": [ + "04-troubleshooting\\tui.md" + ], + "libsecret": [ + "05-operations\\health-checks.md" + ], + "apt-get install libsecret-1-0": [ + "05-operations\\health-checks.md" + ], + "keyring": [ + "05-operations\\health-checks.md" + ], + "gnome-keyring": [ + "05-operations\\health-checks.md" + ], + "pass-cli update service": [ + "05-operations\\security-operations.md" + ], + "pass-cli get service --json": [ + "05-operations\\security-operations.md" + ], + "history -c": [ + "05-operations\\security-operations.md" + ], + "Lint": [ + "06-development\\branch-workflow.md" + ], + "Build": [ + "06-development\\branch-workflow.md" + ], + "main": [ + "06-development\\branch-workflow.md", + "06-development\\ci-cd.md" + ], + "ci.yml": [ + "06-development\\ci-cd.md" + ], + "release.yml": [ + "06-development\\ci-cd.md" + ], + "contents": [ + "06-development\\ci-cd.md" + ], + "packages": [ + "06-development\\ci-cd.md" + ], + "go vet": [ + "06-development\\contributing.md" + ], + "gofmt": [ + "06-development\\contributing.md" + ], + "git log --follow": [ + "06-development\\documentation-lifecycle.md" + ], + "docs": [ + "06-development\\documentation-lifecycle.md" + ], + "latest": [ + "06-development\\homebrew.md", + "06-development\\scoop.md" + ], + "brew test pass-cli": [ + "06-development\\homebrew.md" + ], + "netgo": [ + "06-development\\release.md" + ], + "scoop hash": [ + "06-development\\scoop.md" + ], + "scoop checkver pass-cli -u": [ + "06-development\\scoop.md" + ], + "scoop checkver pass-cli": [ + "06-development\\scoop.md" + ], + "pass-cli version": [ + "06-development\\scoop.md" + ], + "pass-cli --help": [ + "06-development\\scoop.md" + ] + }, + "reference_to_doc": { + "grep": [ + "01-getting-started\\manual-install.md" + ], + "pass-cli": [ + "01-getting-started\\manual-install.md", + "02-guides\\tui-guide.md" + ], + "checksums.txt": [ + "01-getting-started\\manual-install.md", + "06-development\\scoop.md" + ], + "add": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "get": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "list": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "update": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "delete": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "version": [ + "01-getting-started\\quick-start.md" + ], + "doctor": [ + "01-getting-started\\quick-start.md", + "05-operations\\health-checks.md" + ], + "help": [ + "01-getting-started\\quick-start.md", + "03-reference\\configuration.md" + ], + "init": [ + "01-getting-started\\quick-start.md" + ], + "pass-cli list": [ + "01-getting-started\\quick-start.md", + "03-reference\\command-reference.md" + ], + "echo": [ + "01-getting-started\\quick-start.md" + ], + "pass-cli add github": [ + "01-getting-started\\quick-start.md" + ], + "vault_path": [ + "01-getting-started\\quick-start.md", + "02-guides\\scripting-guide.md", + "03-reference\\configuration.md", + "03-reference\\migration.md", + "05-operations\\health-checks.md" + ], + "info": [ + "02-guides\\backup-restore.md" + ], + "pass-cli vault backup info": [ + "02-guides\\backup-restore.md" + ], + "pass-cli vault backup create": [ + "02-guides\\backup-restore.md" + ], + "pass-cli doctor": [ + "02-guides\\backup-restore.md", + "02-guides\\basic-workflows.md", + "02-guides\\keychain-setup.md", + "05-operations\\health-checks.md" + ], + "vault.enc.backup": [ + "02-guides\\backup-restore.md", + "03-reference\\command-reference.md", + "03-reference\\security-architecture.md", + "04-troubleshooting\\vault.md" + ], + "secret-tool clear service pass-cli": [ + "02-guides\\basic-workflows.md" + ], + "jq": [ + "02-guides\\basic-workflows.md", + "05-operations\\health-checks.md" + ], + "pass-cli get github": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli generate": [ + "02-guides\\basic-workflows.md", + "03-reference\\command-reference.md", + "03-reference\\migration.md", + "05-operations\\security-operations.md" + ], + "pass-cli generate --length": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli add github -u": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli update github --generate": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli update github --generate --gen-length": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli keychain enable": [ + "02-guides\\basic-workflows.md", + "02-guides\\keychain-setup.md" + ], + "pass-cli keychain status": [ + "02-guides\\basic-workflows.md", + "02-guides\\keychain-setup.md" + ], + "pass-cli get github --json": [ + "02-guides\\basic-workflows.md" + ], + "pass-cli init": [ + "02-guides\\recovery-phrase.md", + "03-reference\\command-reference.md", + "03-reference\\migration.md", + "04-troubleshooting\\vault.md", + "05-operations\\health-checks.md", + "05-operations\\security-operations.md" + ], + "change-password --recover": [ + "02-guides\\recovery-phrase.md" + ], + "Tab": [ + "02-guides\\tui-guide.md" + ], + "Enter": [ + "02-guides\\tui-guide.md" + ], + "Esc": [ + "02-guides\\tui-guide.md", + "04-troubleshooting\\tui.md" + ], + "pass-cli get": [ + "02-guides\\tui-guide.md", + "04-troubleshooting\\tui.md" + ], + "auto": [ + "02-guides\\tui-guide.md" + ], + "right": [ + "02-guides\\tui-guide.md" + ], + "bottom": [ + "02-guides\\tui-guide.md" + ], + "detail_position": [ + "02-guides\\tui-guide.md" + ], + "detail_auto_threshold": [ + "02-guides\\tui-guide.md" + ], + "pass-cli list --by-project": [ + "02-guides\\usage-tracking.md" + ], + "MyPassword": [ + "03-reference\\command-reference.md" + ], + "EDITOR": [ + "03-reference\\command-reference.md" + ], + "password123": [ + "03-reference\\command-reference.md" + ], + "pass-cli change-password --recover": [ + "03-reference\\command-reference.md", + "03-reference\\migration.md", + "03-reference\\security-architecture.md", + "04-troubleshooting\\vault.md" + ], + "username": [ + "03-reference\\command-reference.md" + ], + "password": [ + "03-reference\\command-reference.md" + ], + "url": [ + "03-reference\\command-reference.md" + ], + "notes": [ + "03-reference\\command-reference.md" + ], + "service": [ + "03-reference\\command-reference.md" + ], + "created": [ + "03-reference\\command-reference.md" + ], + "modified": [ + "03-reference\\command-reference.md" + ], + "accessed": [ + "03-reference\\command-reference.md" + ], + "gen": [ + "03-reference\\command-reference.md" + ], + "pwd": [ + "03-reference\\command-reference.md" + ], + "a-z": [ + "03-reference\\command-reference.md" + ], + "table": [ + "03-reference\\command-reference.md" + ], + "json": [ + "03-reference\\command-reference.md" + ], + "simple": [ + "03-reference\\command-reference.md" + ], + "config reset": [ + "03-reference\\command-reference.md" + ], + "audit-log-path": [ + "03-reference\\command-reference.md" + ], + "pass-cli init --enable-audit": [ + "03-reference\\command-reference.md" + ], + "pass-cli get github --quiet": [ + "03-reference\\command-reference.md" + ], + "pass-cli get github --field": [ + "03-reference\\command-reference.md" + ], + "quit": [ + "03-reference\\configuration.md" + ], + "search": [ + "03-reference\\configuration.md" + ], + "add_credential": [ + "03-reference\\configuration.md" + ], + "edit_credential": [ + "03-reference\\configuration.md" + ], + "delete_credential": [ + "03-reference\\configuration.md" + ], + "toggle_detail": [ + "03-reference\\configuration.md" + ], + "toggle_sidebar": [ + "03-reference\\configuration.md" + ], + "InputField": [ + "03-reference\\known-limitations.md" + ], + "string": [ + "03-reference\\known-limitations.md" + ], + "defer": [ + "03-reference\\known-limitations.md" + ], + "pass-cli migrate": [ + "03-reference\\migration.md" + ], + "pass-cli verify-audit": [ + "03-reference\\migration.md", + "03-reference\\security-architecture.md" + ], + "CryptGenRandom": [ + "03-reference\\security-architecture.md" + ], + "fsync": [ + "03-reference\\security-architecture.md" + ], + "vault.enc": [ + "03-reference\\security-architecture.md", + "04-troubleshooting\\vault.md" + ], + "change-password": [ + "04-troubleshooting\\faq.md" + ], + "Backspace": [ + "04-troubleshooting\\tui.md" + ], + "libsecret": [ + "05-operations\\health-checks.md" + ], + "apt-get install libsecret-1-0": [ + "05-operations\\health-checks.md" + ], + "keyring": [ + "05-operations\\health-checks.md" + ], + "gnome-keyring": [ + "05-operations\\health-checks.md" + ], + "pass-cli update service": [ + "05-operations\\security-operations.md" + ], + "pass-cli get service --json": [ + "05-operations\\security-operations.md" + ], + "history -c": [ + "05-operations\\security-operations.md" + ], + ".github/workflows/release.yml": [ + "06-development\\branch-workflow.md", + "06-development\\release.md" + ], + ".github/workflows/ci.yml": [ + "06-development\\branch-workflow.md" + ], + "Lint": [ + "06-development\\branch-workflow.md" + ], + "Build": [ + "06-development\\branch-workflow.md" + ], + "main": [ + "06-development\\branch-workflow.md", + "06-development\\ci-cd.md" + ], + "ci.yml": [ + "06-development\\ci-cd.md" + ], + "release.yml": [ + "06-development\\ci-cd.md" + ], + ".github/dependabot.yml": [ + "06-development\\ci-cd.md" + ], + "contents": [ + "06-development\\ci-cd.md" + ], + "packages": [ + "06-development\\ci-cd.md" + ], + "go vet": [ + "06-development\\contributing.md" + ], + "gofmt": [ + "06-development\\contributing.md" + ], + "git log --follow": [ + "06-development\\documentation-lifecycle.md" + ], + "docs": [ + "06-development\\documentation-lifecycle.md" + ], + "homebrew/pass-cli.rb": [ + "06-development\\homebrew.md" + ], + "Formula/pass-cli.rb": [ + "06-development\\homebrew.md" + ], + "latest": [ + "06-development\\homebrew.md", + "06-development\\scoop.md" + ], + "brew test pass-cli": [ + "06-development\\homebrew.md" + ], + "update-docs-version.yml": [ + "06-development\\release.md" + ], + ".goreleaser.yml": [ + "06-development\\release.md", + "06-development\\scoop.md" + ], + "netgo": [ + "06-development\\release.md" + ], + "scoop/pass-cli.json": [ + "06-development\\scoop.md" + ], + "bucket/pass-cli.json": [ + "06-development\\scoop.md" + ], + "scoop hash": [ + "06-development\\scoop.md" + ], + "scoop checkver pass-cli -u": [ + "06-development\\scoop.md" + ], + "scoop checkver pass-cli": [ + "06-development\\scoop.md" + ], + "pass-cli version": [ + "06-development\\scoop.md" + ], + "pass-cli --help": [ + "06-development\\scoop.md" + ] + }, + "all_references": { + "command": [ + { + "reference": "grep", + "doc_file": "01-getting-started\\manual-install.md" + }, + { + "reference": "pass-cli", + "doc_file": "01-getting-started\\manual-install.md" + }, + { + "reference": "add", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "get", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "list", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "update", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "delete", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "version", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "doctor", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "help", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "init", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "pass-cli list", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "echo", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "info", + "doc_file": "02-guides\\backup-restore.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "02-guides\\backup-restore.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "02-guides\\backup-restore.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides\\backup-restore.md" + }, + { + "reference": "secret-tool clear service pass-cli", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "jq", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli generate --length", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli add github -u", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli add github -u", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli update github --generate", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli update github --generate --gen-length", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli get github --json", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides\\basic-workflows.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "02-guides\\keychain-setup.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides\\keychain-setup.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides\\keychain-setup.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides\\keychain-setup.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides\\recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides\\recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides\\recovery-phrase.md" + }, + { + "reference": "change-password --recover", + "doc_file": "02-guides\\recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides\\recovery-phrase.md" + }, + { + "reference": "pass-cli", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "pass-cli get", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "auto", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "right", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "bottom", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "pass-cli", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "pass-cli list --by-project", + "doc_file": "02-guides\\usage-tracking.md" + }, + { + "reference": "password123", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "username", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "password", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "url", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "notes", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "service", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "created", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "modified", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "accessed", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "gen", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pwd", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "a-z", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "table", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "table", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "json", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "simple", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "get", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "config reset", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "audit-log-path", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli init --enable-audit", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "add", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "get", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "list", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "update", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "delete", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli get github --quiet", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pass-cli get github --field", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "quit", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "help", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "search", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "string", + "doc_file": "03-reference\\known-limitations.md" + }, + { + "reference": "defer", + "doc_file": "03-reference\\known-limitations.md" + }, + { + "reference": "pass-cli migrate", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "fsync", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "change-password", + "doc_file": "04-troubleshooting\\faq.md" + }, + { + "reference": "pass-cli get", + "doc_file": "04-troubleshooting\\tui.md" + }, + { + "reference": "pass-cli get", + "doc_file": "04-troubleshooting\\tui.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "libsecret", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "apt-get install libsecret-1-0", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "keyring", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "gnome-keyring", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "jq", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "doctor", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "doctor", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "05-operations\\security-operations.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations\\security-operations.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "05-operations\\security-operations.md" + }, + { + "reference": "pass-cli update service", + "doc_file": "05-operations\\security-operations.md" + }, + { + "reference": "pass-cli get service --json", + "doc_file": "05-operations\\security-operations.md" + }, + { + "reference": "history -c", + "doc_file": "05-operations\\security-operations.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "main", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "go vet", + "doc_file": "06-development\\contributing.md" + }, + { + "reference": "gofmt", + "doc_file": "06-development\\contributing.md" + }, + { + "reference": "git log --follow", + "doc_file": "06-development\\documentation-lifecycle.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\homebrew.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\homebrew.md" + }, + { + "reference": "brew test pass-cli", + "doc_file": "06-development\\homebrew.md" + }, + { + "reference": "netgo", + "doc_file": "06-development\\release.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "scoop hash", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "scoop checkver pass-cli -u", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "scoop checkver pass-cli", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "pass-cli version", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "pass-cli --help", + "doc_file": "06-development\\scoop.md" + } + ], + "config_key": [ + { + "reference": "checksums.txt", + "doc_file": "01-getting-started\\manual-install.md" + }, + { + "reference": "grep", + "doc_file": "01-getting-started\\manual-install.md" + }, + { + "reference": "add", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "get", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "list", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "update", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "delete", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "vault_path", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "version", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "doctor", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "help", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "init", + "doc_file": "01-getting-started\\quick-start.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "02-guides\\backup-restore.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "02-guides\\backup-restore.md" + }, + { + "reference": "info", + "doc_file": "02-guides\\backup-restore.md" + }, + { + "reference": "vault_path", + "doc_file": "02-guides\\scripting-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "auto", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "right", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "bottom", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "detail_auto_threshold", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "detail_auto_threshold", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "password123", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "username", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "password", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "url", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "notes", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "service", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "created", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "modified", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "accessed", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "gen", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "pwd", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "table", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "table", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "json", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "simple", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "get", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "add", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "get", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "list", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "update", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "delete", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "quit", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "add_credential", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "edit_credential", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "delete_credential", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "toggle_detail", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "toggle_sidebar", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "help", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "search", + "doc_file": "03-reference\\configuration.md" + }, + { + "reference": "string", + "doc_file": "03-reference\\known-limitations.md" + }, + { + "reference": "defer", + "doc_file": "03-reference\\known-limitations.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference\\migration.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "vault.enc", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "vault.enc", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "fsync", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "vault.enc", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "vault.enc", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "vault.enc", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "04-troubleshooting\\vault.md" + }, + { + "reference": "vault_path", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "vault_path", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "libsecret", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "keyring", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "doctor", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "doctor", + "doc_file": "05-operations\\health-checks.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "ci.yml", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "release.yml", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "contents", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "contents", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "packages", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "main", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "main", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "gofmt", + "doc_file": "06-development\\contributing.md" + }, + { + "reference": "docs", + "doc_file": "06-development\\documentation-lifecycle.md" + }, + { + "reference": "docs", + "doc_file": "06-development\\documentation-lifecycle.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\homebrew.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\homebrew.md" + }, + { + "reference": "netgo", + "doc_file": "06-development\\release.md" + }, + { + "reference": "checksums.txt", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "latest", + "doc_file": "06-development\\scoop.md" + } + ], + "class": [ + { + "reference": "Tab", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "Enter", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "Tab", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides\\tui-guide.md" + }, + { + "reference": "MyPassword", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "EDITOR", + "doc_file": "03-reference\\command-reference.md" + }, + { + "reference": "InputField", + "doc_file": "03-reference\\known-limitations.md" + }, + { + "reference": "InputField", + "doc_file": "03-reference\\known-limitations.md" + }, + { + "reference": "InputField", + "doc_file": "03-reference\\known-limitations.md" + }, + { + "reference": "CryptGenRandom", + "doc_file": "03-reference\\security-architecture.md" + }, + { + "reference": "Esc", + "doc_file": "04-troubleshooting\\tui.md" + }, + { + "reference": "Backspace", + "doc_file": "04-troubleshooting\\tui.md" + }, + { + "reference": "Lint", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "Build", + "doc_file": "06-development\\branch-workflow.md" + } + ], + "file_path": [ + { + "reference": ".github/workflows/release.yml", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": ".github/workflows/ci.yml", + "doc_file": "06-development\\branch-workflow.md" + }, + { + "reference": "ci.yml", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "release.yml", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": ".github/dependabot.yml", + "doc_file": "06-development\\ci-cd.md" + }, + { + "reference": "homebrew/pass-cli.rb", + "doc_file": "06-development\\homebrew.md" + }, + { + "reference": "Formula/pass-cli.rb", + "doc_file": "06-development\\homebrew.md" + }, + { + "reference": "update-docs-version.yml", + "doc_file": "06-development\\release.md" + }, + { + "reference": ".github/workflows/release.yml", + "doc_file": "06-development\\release.md" + }, + { + "reference": ".goreleaser.yml", + "doc_file": "06-development\\release.md" + }, + { + "reference": "scoop/pass-cli.json", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": ".goreleaser.yml", + "doc_file": "06-development\\scoop.md" + }, + { + "reference": "bucket/pass-cli.json", + "doc_file": "06-development\\scoop.md" + } + ] + } +} \ No newline at end of file diff --git a/.doc-manager/memory/doc-conventions.md b/.doc-manager/memory/doc-conventions.md index 008a1008..c2d6bea9 100644 --- a/.doc-manager/memory/doc-conventions.md +++ b/.doc-manager/memory/doc-conventions.md @@ -22,7 +22,7 @@ ### Document Organization - Start with a clear introduction - Use hierarchical headings (H1 → H2 → H3) -- Include a table of contents for long documents +- Do not include a table of contents - most platforms, including github, provide a native TOC ### Code Examples - Provide complete, runnable examples diff --git a/docs/01-getting-started/quick-start.md b/docs/01-getting-started/quick-start.md index bef00328..748b03e2 100644 --- a/docs/01-getting-started/quick-start.md +++ b/docs/01-getting-started/quick-start.md @@ -10,7 +10,7 @@ This 5-minute guide will walk you through initializing your vault and storing yo ## Installation -See [Quick Install]({{< relref "quick-install" >}}) for platform-specific installation instructions (Homebrew, Scoop) or [Manual Installation]({{< relref "manual-install" >}}) for binary download. +See [Quick Install](quick-install) for platform-specific installation instructions (Homebrew, Scoop) or [Manual Installation](manual-install) for binary download. After installation, verify pass-cli is available: diff --git a/docs/01-getting-started/uninstall.md b/docs/01-getting-started/uninstall.md index 150a49af..d62dc9c2 100644 --- a/docs/01-getting-started/uninstall.md +++ b/docs/01-getting-started/uninstall.md @@ -109,7 +109,7 @@ history -c If you encounter issues not covered here: -1. Check the [Troubleshooting Guide]({{< relref "../04-troubleshooting/_index" >}}) +1. Check the [Troubleshooting Guide](../04-troubleshooting/_index) 2. Review [GitHub Issues](https://github.com/ari1110/pass-cli/issues) 3. Ask in [GitHub Discussions](https://github.com/ari1110/pass-cli/discussions) 4. File a [new issue](https://github.com/ari1110/pass-cli/issues/new) @@ -118,6 +118,6 @@ If you encounter issues not covered here: After uninstalling, you might want to: -- Review the [Security Architecture]({{< relref "../03-reference/security-architecture" >}}) +- Review the [Security Architecture](../03-reference/security-architecture) - Check [pass-cli Documentation](https://ari1110.github.io/pass-cli/) for other topics diff --git a/docs/02-guides/backup-restore.md b/docs/02-guides/backup-restore.md index ac75e9a5..c2e884fe 100644 --- a/docs/02-guides/backup-restore.md +++ b/docs/02-guides/backup-restore.md @@ -471,7 +471,7 @@ Monitor backup health with cron: ## See Also -- [Security Architecture]({{< relref "../03-reference/security-architecture" >}}) - Encryption details and security best practices -- [Troubleshooting]({{< relref "../04-troubleshooting/_index" >}}) - General troubleshooting for pass-cli -- [Health Checks]({{< relref "../05-operations/health-checks" >}}) - Vault health checks and diagnostics -- [Quick Start]({{< relref "../01-getting-started/quick-start" >}}) - First-time setup and basic workflows +- [Security Architecture](../03-reference/security-architecture) - Encryption details and security best practices +- [Troubleshooting](../04-troubleshooting/_index) - General troubleshooting for pass-cli +- [Health Checks](../05-operations/health-checks) - Vault health checks and diagnostics +- [Quick Start](../01-getting-started/quick-start) - First-time setup and basic workflows diff --git a/docs/02-guides/basic-workflows.md b/docs/02-guides/basic-workflows.md index 45913b0c..07652fb8 100644 --- a/docs/02-guides/basic-workflows.md +++ b/docs/02-guides/basic-workflows.md @@ -167,7 +167,7 @@ To remove your master password from the keychain, use your operating system's cr After removing the keychain entry, you'll need to enter your master password for each operation. -See [Keychain Setup]({{< relref "keychain-setup" >}}) for detailed platform-specific instructions. +See [Keychain Setup](keychain-setup) for detailed platform-specific instructions. ### Platform-Specific Backends @@ -250,7 +250,7 @@ Health Check Results Overall Status: HEALTHY ``` -See [Health Checks]({{< relref "../05-operations/health-checks" >}}) for detailed health check documentation. +See [Health Checks](../05-operations/health-checks) for detailed health check documentation. ### Common First-Time Issues diff --git a/docs/02-guides/keychain-setup.md b/docs/02-guides/keychain-setup.md index 13534ca9..452fb36f 100644 --- a/docs/02-guides/keychain-setup.md +++ b/docs/02-guides/keychain-setup.md @@ -137,7 +137,7 @@ Health Check Results Overall Status: HEALTHY ``` -See [Health Checks]({{< relref "../05-operations/health-checks" >}}) for detailed health check documentation. +See [Health Checks](../05-operations/health-checks) for detailed health check documentation. ### Common First-Time Issues diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index 6e4f0aeb..f1519227 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -650,10 +650,10 @@ If you used `--no-recovery` during initialization, the `--recover` flag will not #### See Also -- [Password Policy]({{< relref "security-architecture#password-policy" >}}) - Password policy details -- [BIP39 Recovery]({{< relref "security-architecture#bip39-recovery-phrase" >}}) - Recovery phrase details -- [Recovery Guide]({{< relref "../02-guides/recovery-phrase" >}}) - Detailed recovery procedures -- [Keychain Setup]({{< relref "../02-guides/keychain-setup" >}}) - Keychain integration +- [Password Policy](security-architecture#password-policy) - Password policy details +- [BIP39 Recovery](security-architecture#bip39-recovery-phrase) - Recovery phrase details +- [Recovery Guide](../02-guides/recovery-phrase) - Detailed recovery procedures +- [Keychain Setup](../02-guides/keychain-setup) - Keychain integration --- @@ -874,7 +874,7 @@ Total accesses: 20 #### See Also -- [Usage Tracking Guide]({{< relref "../02-guides/usage-tracking" >}}) - Comprehensive usage tracking guide +- [Usage Tracking Guide](../02-guides/usage-tracking) - Comprehensive usage tracking guide --- @@ -1037,7 +1037,7 @@ Are you sure you want to reset to defaults? (y/n): y #### See Also -- [Configuration Reference]({{< relref "configuration" >}}) - Configuration file reference +- [Configuration Reference](configuration) - Configuration file reference --- @@ -1366,7 +1366,7 @@ Total disk space: 7.30 MB ``` **See Also:** -- [Backup & Restore Guide]({{< relref "../02-guides/backup-restore" >}}) - Comprehensive backup guide +- [Backup & Restore Guide](../02-guides/backup-restore) - Comprehensive backup guide --- @@ -1489,8 +1489,8 @@ Review the log file and investigate the flagged entries. #### See Also -- [Audit Logging]({{< relref "security-architecture#audit-logging" >}}) - Audit logging architecture -- [Security Operations]({{< relref "../05-operations/security-operations" >}}) - Security best practices +- [Audit Logging](security-architecture#audit-logging) - Audit logging architecture +- [Security Operations](../05-operations/security-operations) - Security best practices --- @@ -1519,7 +1519,7 @@ Health Check Results Overall Status: HEALTHY ``` -See [Health Checks]({{< relref "../05-operations/health-checks" >}}) for detailed documentation and troubleshooting. +See [Health Checks](../05-operations/health-checks) for detailed documentation and troubleshooting. #### Why does doctor report orphaned keychain entries? @@ -1633,12 +1633,12 @@ tty # Should show /dev/pts/X or similar, not "not a tty" pass-cli init ``` -See [Quick Start Guide]({{< relref "../01-getting-started/quick-start" >}}) for complete first-run documentation. +See [Quick Start Guide](../01-getting-started/quick-start) for complete first-run documentation. ## Getting Help - Run any command with `--help` flag - See [pass-cli Documentation](https://ari1110.github.io/pass-cli/) for overview -- Check [Troubleshooting]({{< relref "../04-troubleshooting/_index" >}}) for common issues +- Check [Troubleshooting](../04-troubleshooting/_index) for common issues - Visit [GitHub Issues](https://github.com/ari1110/pass-cli/issues) diff --git a/docs/03-reference/migration.md b/docs/03-reference/migration.md index 4fb81de6..bf24b599 100644 --- a/docs/03-reference/migration.md +++ b/docs/03-reference/migration.md @@ -445,6 +445,6 @@ Time includes manual re-entry of credentials. Future in-place migration will be ## Support -- **Documentation**: [Security Architecture]({{< relref "security-architecture" >}}), [Command Reference]({{< relref "command-reference" >}}) +- **Documentation**: [Security Architecture](security-architecture), [Command Reference](command-reference) - **Issues**: [GitHub Issues](https://github.com/ari1110/pass-cli/issues) diff --git a/docs/04-troubleshooting/faq.md b/docs/04-troubleshooting/faq.md index 74b3ae67..5af96679 100644 --- a/docs/04-troubleshooting/faq.md +++ b/docs/04-troubleshooting/faq.md @@ -114,7 +114,7 @@ pass-cli list --format json | jq '.[] | .service' **Q: How secure is Pass-CLI?** -A: See [Security Architecture]({{< relref "../03-reference/security-architecture" >}}) for full details: +A: See [Security Architecture](../03-reference/security-architecture) for full details: - AES-256-GCM encryption - PBKDF2 key derivation (600,000 iterations as of January 2025) - System keychain integration diff --git a/docs/05-operations/health-checks.md b/docs/05-operations/health-checks.md index 338a1c5b..fb6e6852 100644 --- a/docs/05-operations/health-checks.md +++ b/docs/05-operations/health-checks.md @@ -398,8 +398,8 @@ This is expected. Run `pass-cli init` to create your vault, then `doctor` will s ## See Also -- [Quick Start Guide]({{< relref "../01-getting-started/quick-start" >}}) - First-time setup and initialization -- [Troubleshooting]({{< relref "../04-troubleshooting/_index" >}}) - Common issues and solutions -- [Security Operations]({{< relref "security-operations" >}}) - Security best practices -- [Command Reference]({{< relref "../03-reference/command-reference" >}}) - Complete command reference +- [Quick Start Guide](../01-getting-started/quick-start) - First-time setup and initialization +- [Troubleshooting](../04-troubleshooting/_index) - Common issues and solutions +- [Security Operations](security-operations) - Security best practices +- [Command Reference](../03-reference/command-reference) - Complete command reference diff --git a/docs/06-development/ci-cd.md b/docs/06-development/ci-cd.md index 683b0aab..64f2f2db 100644 --- a/docs/06-development/ci-cd.md +++ b/docs/06-development/ci-cd.md @@ -350,5 +350,5 @@ Potential workflow improvements: - [GoReleaser Documentation](https://goreleaser.com) - [GitHub Actions Documentation](https://docs.github.com/en/actions) -- [Release Process]({{< relref "release" >}}) -- [Branch Workflow]({{< relref "branch-workflow" >}}) +- [Release Process](release) +- [Branch Workflow](branch-workflow) diff --git a/docs/06-development/contributing.md b/docs/06-development/contributing.md index 1602fc51..c8adc597 100644 --- a/docs/06-development/contributing.md +++ b/docs/06-development/contributing.md @@ -411,7 +411,7 @@ go tool pprof mem.prof ## Release Process -See [Release Process]({{< relref "release" >}}) for detailed release instructions. +See [Release Process](release) for detailed release instructions. Quick reference: diff --git a/docs/README.md b/docs/README.md index d5ddcbcb..1f7543fb 100644 --- a/docs/README.md +++ b/docs/README.md @@ -8,13 +8,13 @@ Welcome to the **pass-cli** documentation. pass-cli is a secure, cross-platform ## Quick Links -- [Quick Start]({{< relref "01-getting-started/quick-start" >}}) - First-time setup and initialization (5 minutes) -- [Quick Install]({{< relref "01-getting-started/quick-install" >}}) - Installation instructions for all platforms -- [Command Reference]({{< relref "03-reference/command-reference" >}}) - Complete command reference -- [Recovery Phrase]({{< relref "02-guides/recovery-phrase" >}}) - BIP39 recovery phrase setup and usage -- [Backup & Restore Guide]({{< relref "02-guides/backup-restore" >}}) - Manual vault backup management -- [Security Architecture]({{< relref "03-reference/security-architecture" >}}) - Security features and cryptography -- [Troubleshooting]({{< relref "04-troubleshooting/_index" >}}) - Common issues and solutions by category +- [Quick Start](01-getting-started/quick-start) - First-time setup and initialization (5 minutes) +- [Quick Install](01-getting-started/quick-install) - Installation instructions for all platforms +- [Command Reference](03-reference/command-reference) - Complete command reference +- [Recovery Phrase](02-guides/recovery-phrase) - BIP39 recovery phrase setup and usage +- [Backup & Restore Guide](02-guides/backup-restore) - Manual vault backup management +- [Security Architecture](03-reference/security-architecture) - Security features and cryptography +- [Troubleshooting](04-troubleshooting/_index) - Common issues and solutions by category ## Features @@ -36,4 +36,4 @@ Welcome to the **pass-cli** documentation. pass-cli is a secure, cross-platform ## Contributing -See [Contributing Guide]({{< relref "06-development/contributing" >}}) for developer documentation and contribution guidelines. +See [Contributing Guide](06-development/contributing) for developer documentation and contribution guidelines. diff --git a/docs/_index.md b/docs/_index.md index de02b843..eefe37da 100644 --- a/docs/_index.md +++ b/docs/_index.md @@ -10,13 +10,13 @@ Welcome to the **pass-cli** documentation. pass-cli is a secure, cross-platform ## Quick Links -- [Quick Start]({{< relref "01-getting-started/quick-start" >}}) - First-time setup and initialization (5 minutes) +- [Quick Start](01-getting-started/quick-start) - First-time setup and initialization (5 minutes) - [Quick Install](01-getting-started/quick-install) - Installation instructions for all platforms -- [Command Reference]({{< relref "03-reference/command-reference" >}}) - Complete command reference -- [Recovery Phrase]({{< relref "02-guides/recovery-phrase" >}}) - BIP39 recovery phrase setup and usage -- [Backup & Restore Guide]({{< relref "02-guides/backup-restore" >}}) - Manual vault backup management -- [Security Architecture]({{< relref "03-reference/security-architecture" >}}) - Security features and cryptography -- [Troubleshooting]({{< relref "04-troubleshooting/_index" >}}) - Common issues and solutions by category +- [Command Reference](03-reference/command-reference) - Complete command reference +- [Recovery Phrase](02-guides/recovery-phrase) - BIP39 recovery phrase setup and usage +- [Backup & Restore Guide](02-guides/backup-restore) - Manual vault backup management +- [Security Architecture](03-reference/security-architecture) - Security features and cryptography +- [Troubleshooting](04-troubleshooting/_index) - Common issues and solutions by category ## Features @@ -38,4 +38,4 @@ Welcome to the **pass-cli** documentation. pass-cli is a secure, cross-platform ## Contributing -See [Contributing Guide]({{< relref "06-development/contributing" >}}) for developer documentation and contribution guidelines. +See [Contributing Guide](06-development/contributing) for developer documentation and contribution guidelines. diff --git a/docsite/layouts/_default/_markup/render-link.html b/docsite/layouts/_default/_markup/render-link.html new file mode 100644 index 00000000..9756d975 --- /dev/null +++ b/docsite/layouts/_default/_markup/render-link.html @@ -0,0 +1,26 @@ +{{- $url := urls.Parse .Destination -}} +{{- $scheme := $url.Scheme -}} + +{{- if $scheme -}} + {{/* External link - render as-is */}} + + {{- .Text | safeHTML -}} + +{{- else -}} + {{/* Internal link - validate it exists */}} + {{- $path := $url.Path -}} + {{- with $.Page.GetPage $path -}} + {{/* Valid internal link */}} + + {{- $.Text | safeHTML -}} + + {{- else -}} + {{/* Broken internal link - fail the build */}} + {{- errorf "Broken internal link in %s: target '%s' not found" $.Page.File.Path $path -}} + {{- end -}} +{{- end -}} From 367fe6cf50c29a54fd3775f5b34ea1a972eb0839 Mon Sep 17 00:00:00 2001 From: Ari Date: Mon, 17 Nov 2025 22:36:09 -0500 Subject: [PATCH 03/19] docs: remove all emojis from documentation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace emoji characters with text equivalents: - ✅ → [OK] - ❌ → [ERROR] - ⚠️ → [WARNING] - 📦 → [PACKAGE] - ✓ → [PASS] - ✗ → [FAIL] Rationale: - Emojis cause UTF-8 encoding issues in tooling - Text equivalents are more professional - Improves compatibility across different systems and tools - 308 occurrences removed across 16 documentation files Generated with Claude Code Co-Authored-By: Claude --- docs/01-getting-started/quick-start.md | 20 ++-- docs/02-guides/backup-restore.md | 40 ++++---- docs/02-guides/basic-workflows.md | 36 +++---- docs/02-guides/keychain-setup.md | 28 +++--- docs/02-guides/recovery-phrase.md | 100 +++++++++--------- docs/03-reference/command-reference.md | 112 ++++++++++----------- docs/03-reference/known-limitations.md | 14 +-- docs/03-reference/migration.md | 60 +++++------ docs/03-reference/security-architecture.md | 80 +++++++-------- docs/04-troubleshooting/faq.md | 8 +- docs/04-troubleshooting/vault.md | 10 +- docs/05-operations/health-checks.md | 26 ++--- docs/05-operations/security-operations.md | 14 +-- docs/06-development/branch-workflow.md | 10 +- docs/06-development/homebrew.md | 26 ++--- docs/06-development/scoop.md | 32 +++--- 16 files changed, 308 insertions(+), 308 deletions(-) diff --git a/docs/01-getting-started/quick-start.md b/docs/01-getting-started/quick-start.md index 748b03e2..e4f31481 100644 --- a/docs/01-getting-started/quick-start.md +++ b/docs/01-getting-started/quick-start.md @@ -56,7 +56,7 @@ Password Requirements: Enter master password: •••••••••••••• Confirm master password: •••••••••••••• -✓ Password meets all requirements +[PASS] Password meets all requirements ┌────────────────────────────────────────────────────────────┐ │ Step 2: Keychain Integration │ @@ -66,13 +66,13 @@ Store your master password in OS keychain for convenience? (Windows Credential Manager, macOS Keychain, Linux Secret Service) Benefits: - ✓ No need to type password for every operation - ✓ Secure OS-level storage - ✓ Can be disabled later via OS credential manager + [PASS] No need to type password for every operation + [PASS] Secure OS-level storage + [PASS] Can be disabled later via OS credential manager Enable keychain storage? (y/n): y -✓ Master password stored in keychain +[PASS] Master password stored in keychain ┌────────────────────────────────────────────────────────────┐ │ Step 3: Audit Logging │ @@ -81,13 +81,13 @@ Enable keychain storage? (y/n): y Enable audit logging to track all vault operations? Benefits: - ✓ Security audit trail - ✓ Tamper-evident with HMAC signatures - ✓ Track all add/get/update/delete operations + [PASS] Security audit trail + [PASS] Tamper-evident with HMAC signatures + [PASS] Track all add/get/update/delete operations Enable audit logging? (y/n): y -✓ Audit logging enabled +[PASS] Audit logging enabled ┌────────────────────────────────────────────────────────────┐ │ Setup Complete! │ @@ -189,5 +189,5 @@ Enter username: your-github-username Enter password: •••••••••••• Confirm password: •••••••••••• -✓ Credential 'github' added successfully +[PASS] Credential 'github' added successfully ``` diff --git a/docs/02-guides/backup-restore.md b/docs/02-guides/backup-restore.md index c2e884fe..6948c2ce 100644 --- a/docs/02-guides/backup-restore.md +++ b/docs/02-guides/backup-restore.md @@ -64,7 +64,7 @@ Manual backups create timestamped copies of your vault that persist alongside au pass-cli vault backup create # Output: -# ✅ Backup created successfully +# [OK] Backup created successfully # # Backup: /home/user/.pass-cli/vault.enc.20251111-143022.manual.backup # Size: 2.5 KB @@ -107,7 +107,7 @@ The restore command automatically selects the newest valid backup (manual or aut pass-cli vault backup restore # Output: -# ⚠️ Warning: This will overwrite your current vault with the backup. +# [WARNING] Warning: This will overwrite your current vault with the backup. # # Backup to restore: # File: /home/user/.pass-cli/vault.enc.20251111-143022.manual.backup @@ -124,7 +124,7 @@ pass-cli vault backup restore pass-cli vault backup restore --force # Output: -# ✅ Vault restored successfully from backup +# [OK] Vault restored successfully from backup # # Restored from: /home/user/.pass-cli/vault.enc.20251111-143022.manual.backup # Backup type: manual @@ -183,17 +183,17 @@ pass-cli vault backup info # 📦 Vault Backup Status # # Automatic Backup: -# ✓ 2 hours ago, 2.5 KB +# [PASS] 2 hours ago, 2.5 KB # # Manual Backups (3 total): # -# 1. ✓ 2 hours ago, 2.5 KB -# 2. ✓ 1 day ago, 2.4 KB -# 3. ✓ 1 week ago, 2.3 KB +# 1. [PASS] 2 hours ago, 2.5 KB +# 2. [PASS] 1 day ago, 2.4 KB +# 3. [PASS] 1 week ago, 2.3 KB # # Total backup size: 7.2 KB # -# ✓ Restore priority: manual backup (2 hours ago) +# [PASS] Restore priority: manual backup (2 hours ago) ``` ### Info with Verbose Output @@ -205,13 +205,13 @@ pass-cli vault backup info --verbose # 📦 Vault Backup Status # # Automatic Backup: -# ✓ 2 hours ago, 2.5 KB +# [PASS] 2 hours ago, 2.5 KB # Path: /home/user/.pass-cli/vault.enc.backup # Modified: 2025-11-11 14:30:22 # # Manual Backups (3 total): # -# 1. ✓ 2 hours ago, 2.5 KB +# 1. [PASS] 2 hours ago, 2.5 KB # Path: /home/user/.pass-cli/vault.enc.20251111-143022.manual.backup # Modified: 2025-11-11 14:30:22 # ... @@ -219,8 +219,8 @@ pass-cli vault backup info --verbose ### Understanding Info Output -- **✓** = Backup passed integrity verification -- **⚠️** = Backup is corrupted or invalid +- **[PASS]** = Backup passed integrity verification +- **[WARNING]** = Backup is corrupted or invalid - **Restore priority** = Which backup will be used for restore - **Total backup size** = Combined size of all backups @@ -228,10 +228,10 @@ pass-cli vault backup info --verbose ```bash # Old backup warning (>30 days) -⚠️ Warning: Backup is 45 days old. Consider creating a fresh backup. +[WARNING] Warning: Backup is 45 days old. Consider creating a fresh backup. # Too many manual backups (>5) -⚠️ Warning: 12 manual backups found. Consider removing old backups to free disk space. +[WARNING] Warning: 12 manual backups found. Consider removing old backups to free disk space. ``` ## Best Practices @@ -288,8 +288,8 @@ Verify backups are valid before relying on them: pass-cli vault backup info # Look for: -# - ✓ (checkmark) = valid backup -# - ⚠️ (warning) = corrupted backup +# - [PASS] (checkmark) = valid backup +# - [WARNING] (warning) = corrupted backup # Test restore (dry run) pass-cli vault backup restore --dry-run @@ -314,7 +314,7 @@ pass-cli vault backup create ```bash # Info shows corrupted backup -⚠️ 2 hours ago, 2.5 KB +[WARNING] 2 hours ago, 2.5 KB ``` **Causes**: @@ -389,9 +389,9 @@ pass-cli vault backup restore --force # Create daily backup with error handling if pass-cli vault backup create &>/dev/null; then - echo "✓ Backup created: $(date)" + echo "[PASS] Backup created: $(date)" else - echo "✗ Backup failed: $(date)" >&2 + echo "[FAIL] Backup failed: $(date)" >&2 exit 1 fi @@ -466,7 +466,7 @@ Monitor backup health with cron: ```bash # Add to crontab: check backup health daily -0 2 * * * pass-cli vault backup info | grep -q "⚠️" && echo "Warning: Backup issue detected" | mail -s "pass-cli backup alert" admin@example.com +0 2 * * * pass-cli vault backup info | grep -q "[WARNING]" && echo "Warning: Backup issue detected" | mail -s "pass-cli backup alert" admin@example.com ``` ## See Also diff --git a/docs/02-guides/basic-workflows.md b/docs/02-guides/basic-workflows.md index 07652fb8..fd89f2ce 100644 --- a/docs/02-guides/basic-workflows.md +++ b/docs/02-guides/basic-workflows.md @@ -88,8 +88,8 @@ $ pass-cli add github -u myuser --generate # Generate with custom length $ pass-cli add github -u myuser --generate --gen-length 32 -✓ Generated 32-character password -✓ Credential 'github' added successfully +[PASS] Generated 32-character password +[PASS] Credential 'github' added successfully ``` **Generate During Update (Password Rotation):** @@ -100,8 +100,8 @@ $ pass-cli update github --generate # Generate with custom length $ pass-cli update github --generate --gen-length 24 -✓ Generated 24-character password -✓ Credential 'github' updated successfully +[PASS] Generated 24-character password +[PASS] Credential 'github' updated successfully ``` **TUI Generation:** @@ -119,7 +119,7 @@ If you didn't enable keychain during initialization, you can enable it anytime: $ pass-cli keychain enable Master password: •••••••••••• -✅ Keychain integration enabled for vault at /home/user/.pass-cli/vault.enc +[OK] Keychain integration enabled for vault at /home/user/.pass-cli/vault.enc Future commands will not prompt for password when keychain is available. ``` @@ -133,12 +133,12 @@ $ pass-cli keychain status Keychain Status for /home/user/.pass-cli/vault.enc: -✓ System Keychain: Available (macOS Keychain) -✓ Password Stored: Yes -✓ Backend: keychain -✓ Vault Configuration: Keychain enabled +[PASS] System Keychain: Available (macOS Keychain) +[PASS] Password Stored: Yes +[PASS] Backend: keychain +[PASS] Vault Configuration: Keychain enabled -✓ Keychain integration is properly configured. +[PASS] Keychain integration is properly configured. Your vault password is securely stored in the system keychain. Future commands will not prompt for password. ``` @@ -149,9 +149,9 @@ $ pass-cli keychain status Keychain Status for /home/user/.pass-cli/vault.enc: -✓ System Keychain: Available (Windows Credential Manager) -✗ Password Stored: No -✓ Vault Configuration: Keychain not enabled +[PASS] System Keychain: Available (Windows Credential Manager) +[FAIL] Password Stored: No +[PASS] Vault Configuration: Keychain not enabled The system keychain is available but no password is stored for this vault. Suggestion: Enable keychain integration with 'pass-cli keychain enable' @@ -241,11 +241,11 @@ $ pass-cli doctor Health Check Results ==================== -✓ Version: v1.2.3 (up to date) -✓ Vault: vault.enc accessible (600 permissions) -✓ Config: Valid configuration -✓ Keychain: Integration active -✓ Backup: 3 backup files found +[PASS] Version: v1.2.3 (up to date) +[PASS] Vault: vault.enc accessible (600 permissions) +[PASS] Config: Valid configuration +[PASS] Keychain: Integration active +[PASS] Backup: 3 backup files found Overall Status: HEALTHY ``` diff --git a/docs/02-guides/keychain-setup.md b/docs/02-guides/keychain-setup.md index 452fb36f..18e2e881 100644 --- a/docs/02-guides/keychain-setup.md +++ b/docs/02-guides/keychain-setup.md @@ -18,7 +18,7 @@ If you didn't enable keychain during initialization, you can enable it anytime: $ pass-cli keychain enable Master password: •••••••••••• -✅ Keychain integration enabled for vault at /home/user/.pass-cli/vault.enc +[OK] Keychain integration enabled for vault at /home/user/.pass-cli/vault.enc Future commands will not prompt for password when keychain is available. ``` @@ -32,12 +32,12 @@ $ pass-cli keychain status Keychain Status for /home/user/.pass-cli/vault.enc: -✓ System Keychain: Available (macOS Keychain) -✓ Password Stored: Yes -✓ Backend: keychain -✓ Vault Configuration: Keychain enabled +[PASS] System Keychain: Available (macOS Keychain) +[PASS] Password Stored: Yes +[PASS] Backend: keychain +[PASS] Vault Configuration: Keychain enabled -✓ Keychain integration is properly configured. +[PASS] Keychain integration is properly configured. Your vault password is securely stored in the system keychain. Future commands will not prompt for password. ``` @@ -48,9 +48,9 @@ $ pass-cli keychain status Keychain Status for /home/user/.pass-cli/vault.enc: -✓ System Keychain: Available (Windows Credential Manager) -✗ Password Stored: No -✓ Vault Configuration: Keychain not enabled +[PASS] System Keychain: Available (Windows Credential Manager) +[FAIL] Password Stored: No +[PASS] Vault Configuration: Keychain not enabled The system keychain is available but no password is stored for this vault. Suggestion: Enable keychain integration with 'pass-cli keychain enable' @@ -128,11 +128,11 @@ $ pass-cli doctor Health Check Results ==================== -✓ Version: v1.2.3 (up to date) -✓ Vault: vault.enc accessible (600 permissions) -✓ Config: Valid configuration -✓ Keychain: Integration active -✓ Backup: 3 backup files found +[PASS] Version: v1.2.3 (up to date) +[PASS] Vault: vault.enc accessible (600 permissions) +[PASS] Config: Valid configuration +[PASS] Keychain: Integration active +[PASS] Backup: 3 backup files found Overall Status: HEALTHY ``` diff --git a/docs/02-guides/recovery-phrase.md b/docs/02-guides/recovery-phrase.md index be0f1f39..907e8f3f 100644 --- a/docs/02-guides/recovery-phrase.md +++ b/docs/02-guides/recovery-phrase.md @@ -13,10 +13,10 @@ Complete guide to using BIP39 recovery phrases to recover vault access if you fo Pass-CLI's BIP39 recovery feature generates a 24-word recovery phrase when you create your vault. If you ever forget your master password, you can reset it using just 6 words from your recovery phrase. **Key Benefits**: -- ✅ **Industry Standard**: Uses BIP39 (same as hardware wallets) -- ✅ **Secure**: 6 words = 73.8 quintillion combinations -- ✅ **Fast**: Recover in under 30 seconds -- ✅ **Optional**: Can skip with `--no-recovery` flag if you use keychain integration +- [OK] **Industry Standard**: Uses BIP39 (same as hardware wallets) +- [OK] **Secure**: 6 words = 73.8 quintillion combinations +- [OK] **Fast**: Recover in under 30 seconds +- [OK] **Optional**: Can skip with `--no-recovery` flag if you use keychain integration ## Setting Up Recovery @@ -29,7 +29,7 @@ $ pass-cli init Enter master password: **** Confirm master password: **** -✓ Vault created +[PASS] Vault created ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Recovery Phrase Setup @@ -53,16 +53,16 @@ Advanced: Add passphrase protection? (y/N): n Verify your backup? (Y/n): y Enter word #7: device -✓ (1/3) +[PASS] (1/3) Enter word #18: identify -✓ (2/3) +[PASS] (2/3) Enter word #22: spin -✓ (3/3) +[PASS] (3/3) -✓ Recovery phrase verified -✓ Vault initialized successfully +[PASS] Recovery phrase verified +[PASS] Vault initialized successfully ``` ### Skipping Recovery Phrase @@ -81,17 +81,17 @@ pass-cli init --no-recovery **CRITICAL**: Write down your 24-word phrase **on paper** (not digitally). Store it securely: **Secure Storage** (Recommended): -- ✅ Physical safe or lockbox -- ✅ Safety deposit box at bank -- ✅ Fireproof/waterproof document safe at home -- ✅ Split across multiple secure locations (advanced) +- [OK] Physical safe or lockbox +- [OK] Safety deposit box at bank +- [OK] Fireproof/waterproof document safe at home +- [OK] Split across multiple secure locations (advanced) **Insecure Storage** (Avoid): -- ❌ Digital notes apps (Apple Notes, Google Keep, etc.) -- ❌ Cloud storage (Dropbox, Google Drive, iCloud) -- ❌ Email or messaging apps -- ❌ Screenshots or photos on phone -- ❌ Password managers (defeats the purpose) +- [ERROR] Digital notes apps (Apple Notes, Google Keep, etc.) +- [ERROR] Cloud storage (Dropbox, Google Drive, iCloud) +- [ERROR] Email or messaging apps +- [ERROR] Screenshots or photos on phone +- [ERROR] Password managers (defeats the purpose) **Keep your phrase offline**. If someone gets your phrase, they can access your vault. @@ -100,9 +100,9 @@ pass-cli init --no-recovery ### When to Use Recovery Use recovery if: -- ✅ You forgot your master password -- ✅ You have your 24-word recovery phrase -- ✅ Recovery was enabled during `pass-cli init` +- [OK] You forgot your master password +- [OK] You have your 24-word recovery phrase +- [OK] Recovery was enabled during `pass-cli init` **Note**: If keychain is enabled and accessible, you don't need recovery. Your master password is stored securely in your OS keychain. @@ -125,25 +125,25 @@ You will be asked for 6 words from your 24-word phrase. Have your recovery phrase ready. Enter word #18: identify -✓ (1/6) +[PASS] (1/6) Enter word #3: about -✓ (2/6) +[PASS] (2/6) Enter word #22: spin -✓ (3/6) +[PASS] (3/6) Enter word #7: device -✓ (4/6) +[PASS] (4/6) Enter word #11: diary -✓ (5/6) +[PASS] (5/6) Enter word #15: hybrid -✓ (6/6) +[PASS] (6/6) -✓ Recovery phrase verified -✓ Vault unlocked +[PASS] Recovery phrase verified +[PASS] Vault unlocked ``` #### Step 3: Set New Master Password @@ -152,7 +152,7 @@ Enter word #15: hybrid Enter new master password: **** Confirm new master password: **** -✓ Master password changed successfully +[PASS] Master password changed successfully Your vault has been re-encrypted with the new password. ``` @@ -191,22 +191,22 @@ Your vault is now accessible with your new master password. If keychain integrat ### What Never to Do **Never Store Digitally**: -- ❌ Photos or screenshots -- ❌ Cloud storage services -- ❌ Email or messaging apps -- ❌ Password managers -- ❌ Digital note-taking apps +- [ERROR] Photos or screenshots +- [ERROR] Cloud storage services +- [ERROR] Email or messaging apps +- [ERROR] Password managers +- [ERROR] Digital note-taking apps **Never Share**: -- ❌ Don't tell anyone your recovery phrase -- ❌ Pass-CLI will never ask for your full phrase -- ❌ No support person needs your recovery phrase -- ❌ Recovery phrase = full vault access +- [ERROR] Don't tell anyone your recovery phrase +- [ERROR] Pass-CLI will never ask for your full phrase +- [ERROR] No support person needs your recovery phrase +- [ERROR] Recovery phrase = full vault access **Never Memorize Only**: -- ❌ Human memory is fallible -- ❌ Always have physical backup -- ❌ Don't rely on memory alone +- [ERROR] Human memory is fallible +- [ERROR] Always have physical backup +- [ERROR] Don't rely on memory alone ### Testing Your Backup @@ -242,20 +242,20 @@ Advanced: Add passphrase protection? (y/N): y Enter passphrase (optional 25th word): **** Confirm passphrase: **** -✓ Passphrase protection enabled +[PASS] Passphrase protection enabled ``` ### Security Trade-offs **Benefits**: -- ✅ Even if someone finds your 24 words, they still need the passphrase -- ✅ Plausible deniability (can have multiple vaults with same phrase + different passphrases) -- ✅ Extra layer of security +- [OK] Even if someone finds your 24 words, they still need the passphrase +- [OK] Plausible deniability (can have multiple vaults with same phrase + different passphrases) +- [OK] Extra layer of security **Risks**: -- ❌ If you lose the passphrase, you **cannot** recover your vault -- ❌ Must remember/store passphrase separately from 24-word phrase -- ❌ More complex recovery process +- [ERROR] If you lose the passphrase, you **cannot** recover your vault +- [ERROR] Must remember/store passphrase separately from 24-word phrase +- [ERROR] More complex recovery process **Recommendation**: Only use passphrase protection if you: - Understand the risks diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index f1519227..a5ac5f62 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -81,10 +81,10 @@ All master passwords must meet complexity requirements: - **Symbol**: At least one special symbol (!@#$%^&*()-_=+[]{}|;:,.<>?) **Examples**: -- ✅ `MySecureP@ssw0rd2025!` (meets all requirements) -- ✅ `Correct-Horse-Battery-29!` (meets all requirements) -- ❌ `password123` (too short, no uppercase, no symbol) -- ❌ `MyPassword` (no digit, no symbol) +- [OK] `MySecureP@ssw0rd2025!` (meets all requirements) +- [OK] `Correct-Horse-Battery-29!` (meets all requirements) +- [ERROR] `password123` (too short, no uppercase, no symbol) +- [ERROR] `MyPassword` (no digit, no symbol) #### Audit Logging (Optional) @@ -309,7 +309,7 @@ Password: mySecretPassword123! URL: https://github.com Notes: Personal account -✓ Password copied to clipboard (will clear in 5 seconds) +[PASS] Password copied to clipboard (will clear in 5 seconds) ``` **Quiet mode:** @@ -575,16 +575,16 @@ Enter current master password: ******** Enter new master password (min 12 characters with uppercase, lowercase, digit, symbol): ******** -Password strength: Strong ✅ -- Length: 16 characters ✅ -- Uppercase: Yes ✅ -- Lowercase: Yes ✅ -- Digits: Yes ✅ -- Symbols: Yes ✅ +Password strength: Strong [OK] +- Length: 16 characters [OK] +- Uppercase: Yes [OK] +- Lowercase: Yes [OK] +- Digits: Yes [OK] +- Symbols: Yes [OK] Confirm new master password: ******** -✅ Master password changed successfully! +[OK] Master password changed successfully! ``` **Recovery flow with BIP39 phrase:** @@ -599,29 +599,29 @@ BIP39 Recovery Phrase Challenge You will be asked to provide 6 words from your 24-word recovery phrase. Enter word #7: device -✓ (1/6) +[PASS] (1/6) Enter word #12: diesel -✓ (2/6) +[PASS] (2/6) Enter word #18: identify -✓ (3/6) +[PASS] (3/6) Enter word #3: about -✓ (4/6) +[PASS] (4/6) Enter word #22: spin -✓ (5/6) +[PASS] (5/6) Enter word #15: hybrid -✓ (6/6) +[PASS] (6/6) -✅ Recovery phrase verified successfully! +[OK] Recovery phrase verified successfully! Enter new master password: ******** Confirm new master password: ******** -✅ Master password changed successfully! +[OK] Master password changed successfully! Your vault has been re-encrypted with the new password. ``` @@ -825,9 +825,9 @@ Usage History for 'github': Location Git Repo Last Access Count Fields ────────────────────────────────────────────────────────────────────────────────────────────────── -/home/user/projects/webapp ✓ webapp 2025-11-12 14:30 12 password(8), username(4) -/home/user/projects/api-service ✓ api-service 2025-11-10 09:15 5 password(5) -/home/user/scripts ✗ (not a git repo) 2025-11-08 16:45 3 password(2), url(1) +/home/user/projects/webapp [PASS] webapp 2025-11-12 14:30 12 password(8), username(4) +/home/user/projects/api-service [PASS] api-service 2025-11-10 09:15 5 password(5) +/home/user/scripts [FAIL] (not a git repo) 2025-11-08 16:45 3 password(2), url(1) Total locations: 3 Total accesses: 20 @@ -866,7 +866,7 @@ Total accesses: 20 #### Notes -- **Path Validation**: Shows ✓ if location path still exists, ✗ if deleted +- **Path Validation**: Shows [PASS] if location path still exists, [FAIL] if deleted - **Git Integration**: Detects git repositories and shows repo name - **Field Tracking**: Counts which credential fields were accessed - **Automatic**: Usage tracked automatically on every `get` command @@ -920,7 +920,7 @@ pass-cli config init **Output:** ``` -✅ Configuration file created: /home/user/.pass-cli/config.yml +[OK] Configuration file created: /home/user/.pass-cli/config.yml Edit the file to customize your settings: - Terminal warnings @@ -982,7 +982,7 @@ pass-cli config validate **Output (Valid):** ``` -✅ Configuration is valid +[OK] Configuration is valid Settings: Vault path: ~/.pass-cli/vault.enc @@ -992,7 +992,7 @@ Settings: **Output (Invalid):** ``` -❌ Configuration has errors: +[ERROR] Configuration has errors: Line 12: Invalid terminal width: 0 (must be between 1-10000) Line 25: Duplicate keybinding: Ctrl+S assigned to both 'save' and 'search' @@ -1029,10 +1029,10 @@ pass-cli config reset --force **Output:** ``` -⚠️ This will overwrite your current configuration. +[WARNING] This will overwrite your current configuration. Are you sure you want to reset to defaults? (y/n): y -✅ Configuration reset to defaults: /home/user/.pass-cli/config.yml +[OK] Configuration reset to defaults: /home/user/.pass-cli/config.yml ``` #### See Also @@ -1086,7 +1086,7 @@ pass-cli keychain enable --force ``` Master password: ******** -✅ Keychain integration enabled for vault at /home/user/.pass-cli/vault.enc +[OK] Keychain integration enabled for vault at /home/user/.pass-cli/vault.enc Future commands will not prompt for password when keychain is available. ``` @@ -1117,9 +1117,9 @@ pass-cli keychain status ``` Keychain Status for /home/user/.pass-cli/vault.enc: -✓ System Keychain: Available (keychain) -✓ Password Stored: Yes -✓ Backend: keychain +[PASS] System Keychain: Available (keychain) +[PASS] Password Stored: Yes +[PASS] Backend: keychain Your vault password is securely stored in the system keychain. Future commands will not prompt for password. @@ -1129,8 +1129,8 @@ Future commands will not prompt for password. ``` Keychain Status for /home/user/.pass-cli/vault.enc: -✓ System Keychain: Available (wincred) -✗ Password Stored: No +[PASS] System Keychain: Available (wincred) +[FAIL] Password Stored: No The system keychain is available but no password is stored for this vault. Run 'pass-cli keychain enable' to store your password and skip future prompts. @@ -1140,8 +1140,8 @@ Run 'pass-cli keychain enable' to store your password and skip future prompts. ``` Keychain Status for /home/user/.pass-cli/vault.enc: -✗ System Keychain: Not available on this platform -✗ Password Stored: N/A +[FAIL] System Keychain: Not available on this platform +[FAIL] Password Stored: N/A System keychain is not accessible. You will be prompted for password on each command. ``` @@ -1181,7 +1181,7 @@ Permanently deletes: 2. The master password from the system keychain 3. Any orphaned keychain entries -**⚠️ WARNING:** This operation is irreversible. All stored credentials will be lost. Ensure you have backups before proceeding. +**[WARNING] WARNING:** This operation is irreversible. All stored credentials will be lost. Ensure you have backups before proceeding. **Arguments:** @@ -1210,10 +1210,10 @@ pass-cli vault remove /path/to/vault.enc --force **Output:** ``` -⚠️ WARNING: This will permanently delete the vault and all stored credentials. +[WARNING] WARNING: This will permanently delete the vault and all stored credentials. Are you sure you want to remove /home/user/.pass-cli/vault.enc? (y/n): y -✅ Vault removed successfully: +[OK] Vault removed successfully: • Vault file deleted • Keychain entry removed • Orphaned entries cleaned up @@ -1257,7 +1257,7 @@ pass-cli vault backup create --verbose **Output:** ``` -✅ Manual backup created successfully: +[OK] Manual backup created successfully: /home/user/.pass-cli/vault.enc.20251112-143022.manual.backup Size: 2.45 MB ``` @@ -1274,7 +1274,7 @@ pass-cli vault backup restore [flags] **Description:** Automatically selects the newest valid backup (automatic or manual) and restores it. Considers both `vault.enc.backup` (automatic) and `vault.enc.*.manual.backup` files. -**⚠️ WARNING:** This command overwrites your current vault file with the backup. +**[WARNING] WARNING:** This command overwrites your current vault file with the backup. **Flags:** @@ -1305,10 +1305,10 @@ Found backup: /home/user/.pass-cli/vault.enc.20251112-143022.manual.backup Backup age: 2 hours ago Size: 2.45 MB -⚠️ This will overwrite your current vault file. +[WARNING] This will overwrite your current vault file. Are you sure you want to restore from this backup? (y/n): y -✅ Vault restored successfully from backup +[OK] Vault restored successfully from backup ``` ###### vault backup info @@ -1348,16 +1348,16 @@ pass-cli vault backup info --verbose 📦 Backup Status for: /home/user/.pass-cli/vault.enc Automatic Backup: - ✅ vault.enc.backup + [OK] vault.enc.backup Size: 2.45 MB Created: 1 day ago (2025-11-11 14:30:22) Manual Backups: - ✅ vault.enc.20251112-143022.manual.backup ← Would be used for restore + [OK] vault.enc.20251112-143022.manual.backup ← Would be used for restore Size: 2.45 MB Created: 2 hours ago (2025-11-12 14:30:22) - ✅ vault.enc.20251110-091545.manual.backup + [OK] vault.enc.20251110-091545.manual.backup Size: 2.40 MB Created: 2 days ago (2025-11-10 09:15:45) @@ -1424,13 +1424,13 @@ PASS_AUDIT_LOG=/custom/audit.log pass-cli verify-audit ``` 🔍 Verifying audit log: /home/user/.pass-cli/audit.log -✅ Audit log verification complete: +[OK] Audit log verification complete: Total entries: 127 Valid entries: 127 Invalid entries: 0 Tampered entries: 0 -Audit log integrity: VERIFIED ✅ +Audit log integrity: VERIFIED [OK] ``` #### Output (Tampered Detected) @@ -1438,7 +1438,7 @@ Audit log integrity: VERIFIED ✅ ``` 🔍 Verifying audit log: /home/user/.pass-cli/audit.log -⚠️ Audit log verification failed: +[WARNING] Audit log verification failed: Total entries: 127 Valid entries: 123 Invalid entries: 4 @@ -1450,7 +1450,7 @@ Invalid entries detected: Line 89: Invalid JSON structure Line 102: Missing required fields -Audit log integrity: FAILED ❌ +Audit log integrity: FAILED [ERROR] CRITICAL: Audit log may have been tampered with or corrupted. Review the log file and investigate the flagged entries. @@ -1510,11 +1510,11 @@ Review the log file and investigate the flagged entries. Health Check Results ==================== -✓ Version: v1.2.3 (up to date) -✓ Vault: vault.enc accessible (600 permissions) -✓ Config: Valid configuration -✓ Keychain: Integration active -✓ Backup: 3 backup files found +[PASS] Version: v1.2.3 (up to date) +[PASS] Vault: vault.enc accessible (600 permissions) +[PASS] Config: Valid configuration +[PASS] Keychain: Integration active +[PASS] Backup: 3 backup files found Overall Status: HEALTHY ``` diff --git a/docs/03-reference/known-limitations.md b/docs/03-reference/known-limitations.md index 7418e365..8c1907f3 100644 --- a/docs/03-reference/known-limitations.md +++ b/docs/03-reference/known-limitations.md @@ -60,8 +60,8 @@ password := passwordField.GetText() // Returns string (immutable) | Aspect | CLI Mode | TUI Mode | |--------|----------|----------| | **Password Input** | `term.ReadPassword()` → `[]byte` | `InputField.GetText()` → `string` | -| **Memory Clearing** | ✅ Immediate (deferred) | ⚠️ Relies on Go GC | -| **String Conversion** | ❌ Never converted | ⚠️ Converted once for vault ops | +| **Memory Clearing** | [OK] Immediate (deferred) | [WARNING] Relies on Go GC | +| **String Conversion** | [ERROR] Never converted | [WARNING] Converted once for vault ops | | **Security Level** | High | Medium-High | | **Usability** | Low (no visual feedback) | High (strength indicator, edit, etc.) | @@ -106,9 +106,9 @@ defer crypto.ClearBytes(passwordBytes) ``` **What We Don't Do**: -- ❌ Clear the original string (impossible in Go) -- ❌ Avoid string conversion (tview API limitation) -- ❌ Use custom input widget (out of scope for current release) +- [ERROR] Clear the original string (impossible in Go) +- [ERROR] Avoid string conversion (tview API limitation) +- [ERROR] Use custom input widget (out of scope for current release) ### Test Verification @@ -123,8 +123,8 @@ go test -v ./tests/security -run TestTerminalInputSecurity ``` **Expected Results**: -- ✅ CLI mode: passwords cleared immediately -- ⚠️ TUI mode: string lingers until GC (documented limitation) +- [OK] CLI mode: passwords cleared immediately +- [WARNING] TUI mode: string lingers until GC (documented limitation) ### Related Issues diff --git a/docs/03-reference/migration.md b/docs/03-reference/migration.md index bf24b599..0c595511 100644 --- a/docs/03-reference/migration.md +++ b/docs/03-reference/migration.md @@ -200,7 +200,7 @@ pass-cli get github ### Option B: In-Place Migration (Future Feature) -> **⚠️ WARNING**: This feature is **NOT YET IMPLEMENTED**. The `pass-cli migrate` command does not currently exist. Use Option A (Manual Migration) instead. +> **[WARNING] WARNING**: This feature is **NOT YET IMPLEMENTED**. The `pass-cli migrate` command does not currently exist. Use Option A (Manual Migration) instead. **Status**: Not yet implemented. Planned for future release. @@ -263,35 +263,35 @@ pass-cli migrate --iterations 600000 --enable-audit ### Vault File Format **100k Iteration Vaults**: -- ✅ Fully supported -- ✅ Auto-detected by iteration count in metadata -- ✅ No performance degradation -- ✅ Can be used alongside 600k vaults +- [OK] Fully supported +- [OK] Auto-detected by iteration count in metadata +- [OK] No performance degradation +- [OK] Can be used alongside 600k vaults **600k Iteration Vaults**: -- ⚠️ **Not compatible with older Pass-CLI versions** (pre-January 2025) -- ✅ Auto-detected by iteration count in metadata -- ✅ Future-proof format +- [WARNING] **Not compatible with older Pass-CLI versions** (pre-January 2025) +- [OK] Auto-detected by iteration count in metadata +- [OK] Future-proof format ### Password Policy **Existing Credentials**: -- ✅ Old passwords (not meeting policy) remain valid -- ⚠️ Policy enforced only when creating/updating credentials -- ✅ No forced password changes +- [OK] Old passwords (not meeting policy) remain valid +- [WARNING] Policy enforced only when creating/updating credentials +- [OK] No forced password changes **New/Updated Credentials**: -- ⚠️ Must meet new policy requirements -- ✅ Real-time validation with helpful error messages -- ✅ TUI shows password strength indicator +- [WARNING] Must meet new policy requirements +- [OK] Real-time validation with helpful error messages +- [OK] TUI shows password strength indicator ### Cross-Version Compatibility Matrix | Vault Type | Pass-CLI (Old) | Pass-CLI (Jan 2025) | |------------|----------------|---------------------| -| 100k iterations | ✅ Read/Write | ✅ Read/Write | -| 600k iterations | ❌ Incompatible | ✅ Read/Write | -| With audit logging | ❌ Incompatible | ✅ Read/Write | +| 100k iterations | [OK] Read/Write | [OK] Read/Write | +| 600k iterations | [ERROR] Incompatible | [OK] Read/Write | +| With audit logging | [ERROR] Incompatible | [OK] Read/Write | ## Troubleshooting @@ -423,25 +423,25 @@ Time includes manual re-entry of credentials. Future in-place migration will be ### Before Migration -1. ✅ Backup vault file: `cp ~/.pass-cli/vault.enc ~/backup/` -2. ✅ Export credentials: `pass-cli list --format json > backup.json` -3. ✅ Test new Pass-CLI version with test vault first -4. ✅ Read this migration guide completely +1. [OK] Backup vault file: `cp ~/.pass-cli/vault.enc ~/backup/` +2. [OK] Export credentials: `pass-cli list --format json > backup.json` +3. [OK] Test new Pass-CLI version with test vault first +4. [OK] Read this migration guide completely ### During Migration -1. ✅ Use `pass-cli generate` command for policy-compliant passwords -2. ✅ Verify each credential after adding -3. ✅ Test vault unlock multiple times -4. ✅ Enable audit logging for compliance needs +1. [OK] Use `pass-cli generate` command for policy-compliant passwords +2. [OK] Verify each credential after adding +3. [OK] Test vault unlock multiple times +4. [OK] Enable audit logging for compliance needs ### After Migration -1. ✅ Verify all credentials accessible -2. ✅ Test credential retrieval in scripts -3. ✅ Update documentation/runbooks with new requirements -4. ✅ Delete old vault backup after 30-day grace period -5. ✅ Run `pass-cli verify-audit` monthly (if audit logging enabled) +1. [OK] Verify all credentials accessible +2. [OK] Test credential retrieval in scripts +3. [OK] Update documentation/runbooks with new requirements +4. [OK] Delete old vault backup after 30-day grace period +5. [OK] Run `pass-cli verify-audit` monthly (if audit logging enabled) ## Support diff --git a/docs/03-reference/security-architecture.md b/docs/03-reference/security-architecture.md index 80fadc3a..7b28fa94 100644 --- a/docs/03-reference/security-architecture.md +++ b/docs/03-reference/security-architecture.md @@ -201,18 +201,18 @@ Pass-CLI integrates with your operating system's secure credential storage to sa ### Master Password Security **What Pass-CLI Does:** -- ✅ Stores master password in system keychain -- ✅ Clears password from memory after use -- ✅ Never writes password to disk in plaintext -- ✅ Never logs password +- [OK] Stores master password in system keychain +- [OK] Clears password from memory after use +- [OK] Never writes password to disk in plaintext +- [OK] Never logs password **What You Should Do:** -- ✅ Use a unique master password (not reused elsewhere) -- ✅ Make it strong (20+ characters or passphrase) -- ✅ Store backup securely (password manager, safe place) -- ✅ Save your BIP39 recovery phrase offline (paper, safe) -- ❌ Don't share your master password -- ❌ Don't write it in plaintext files +- [OK] Use a unique master password (not reused elsewhere) +- [OK] Make it strong (20+ characters or passphrase) +- [OK] Store backup securely (password manager, safe place) +- [OK] Save your BIP39 recovery phrase offline (paper, safe) +- [ERROR] Don't share your master password +- [ERROR] Don't write it in plaintext files ### BIP39 Recovery Phrase @@ -257,17 +257,17 @@ pass-cli change-password --recover #### Storage Recommendations **Secure Storage** (Recommended): -- ✅ Write on paper and store in physical safe -- ✅ Safety deposit box -- ✅ Fireproof/waterproof document safe -- ✅ Split across multiple secure locations (advanced) +- [OK] Write on paper and store in physical safe +- [OK] Safety deposit box +- [OK] Fireproof/waterproof document safe +- [OK] Split across multiple secure locations (advanced) **Insecure Storage** (Avoid): -- ❌ Digital notes apps -- ❌ Cloud storage (Dropbox, Google Drive) -- ❌ Email or messaging apps -- ❌ Screenshots or photos -- ❌ Password managers (defeats the purpose) +- [ERROR] Digital notes apps +- [ERROR] Cloud storage (Dropbox, Google Drive) +- [ERROR] Email or messaging apps +- [ERROR] Screenshots or photos +- [ERROR] Password managers (defeats the purpose) **Important**: Anyone with your 24-word phrase can access your vault. Protect it as carefully as your master password. @@ -328,11 +328,11 @@ Before each vault save operation, pass-cli creates an N-1 backup: **Security Implications**: -- ⚠️ **Backup files contain unencrypted vault structure**: `vault.enc.backup` is AES-256-GCM encrypted (same as vault), but still sensitive -- ✅ **File permissions**: Backup automatically inherits vault permissions (0600 - owner read/write only) -- ⚠️ **Temporary files**: `vault.enc.tmp.*` files may remain if process crashes (cleaned up automatically on next save) -- ✅ **Automatic cleanup**: Backup removed after successful unlock, minimizing exposure window -- ⚠️ **Contains N-1 state**: Backup has previous vault version (not current), may contain deleted credentials +- [WARNING] **Backup files contain unencrypted vault structure**: `vault.enc.backup` is AES-256-GCM encrypted (same as vault), but still sensitive +- [OK] **File permissions**: Backup automatically inherits vault permissions (0600 - owner read/write only) +- [WARNING] **Temporary files**: `vault.enc.tmp.*` files may remain if process crashes (cleaned up automatically on next save) +- [OK] **Automatic cleanup**: Backup removed after successful unlock, minimizing exposure window +- [WARNING] **Contains N-1 state**: Backup has previous vault version (not current), may contain deleted credentials **Manual Backup Recommendations**: @@ -393,51 +393,51 @@ pass-cli verify-audit ### What Pass-CLI Protects Against -✅ **Offline Attacks** +[OK] **Offline Attacks** - Vault file encryption protects against offline brute-force - PBKDF2 slows down password cracking (600,000 iterations) - No plaintext credentials stored anywhere -✅ **File System Compromise** +[OK] **File System Compromise** - Encrypted vault remains secure even if file is stolen - File permissions prevent unauthorized local access -✅ **Process Memory Dumps** +[OK] **Process Memory Dumps** - Sensitive data cleared from memory after use - Master password not kept in memory permanently -✅ **Accidental Disclosure** +[OK] **Accidental Disclosure** - No cloud storage = no cloud breach risk - No network calls = no network interception -✅ **Unauthorized Local Access** +[OK] **Unauthorized Local Access** - System keychain protects master password - File permissions restrict vault access ### What Pass-CLI Does NOT Protect Against -❌ **Malware on Your Machine** +[ERROR] **Malware on Your Machine** - Keyloggers can capture master password when entered - Memory scrapers can extract decrypted credentials - Root/admin access bypasses file permissions -❌ **Physical Access Attacks** +[ERROR] **Physical Access Attacks** - Attacker with physical access can copy vault file - Vault encryption is only protection (strong password essential) -❌ **Side-Channel Attacks** +[ERROR] **Side-Channel Attacks** - Timing attacks, power analysis not mitigated - Not designed for hostile multi-user systems -❌ **Weak Master Passwords** +[ERROR] **Weak Master Passwords** - PBKDF2 slows attacks but doesn't prevent them - Short/common passwords can be brute-forced -❌ **Social Engineering** +[ERROR] **Social Engineering** - Cannot protect against phishing for master password - User education essential -❌ **TUI Display Security (Interactive Mode)** +[ERROR] **TUI Display Security (Interactive Mode)** - Shoulder surfing: Credentials visible on screen in TUI mode - Screen recording: TUI displays service names and details - Password visibility toggle: `Ctrl+P` shows plaintext passwords @@ -486,9 +486,9 @@ pass-cli verify-audit ### Out of Scope -- ✗ Cloud synchronization -- ✗ Multi-user support -- ✗ Hardware security module (HSM) integration -- ✗ Biometric authentication -- ✗ Two-factor authentication for master password +- [FAIL] Cloud synchronization +- [FAIL] Multi-user support +- [FAIL] Hardware security module (HSM) integration +- [FAIL] Biometric authentication +- [FAIL] Two-factor authentication for master password diff --git a/docs/04-troubleshooting/faq.md b/docs/04-troubleshooting/faq.md index 5af96679..2dad4940 100644 --- a/docs/04-troubleshooting/faq.md +++ b/docs/04-troubleshooting/faq.md @@ -78,10 +78,10 @@ You'll be prompted to enter 6 words from your 24-word recovery phrase to verify **Q: Is my data sent to the cloud?** A: No. Pass-CLI: -- ✅ Works completely offline -- ✅ Never makes network calls -- ✅ Stores everything locally -- ✅ No telemetry or tracking +- [OK] Works completely offline +- [OK] Never makes network calls +- [OK] Stores everything locally +- [OK] No telemetry or tracking --- diff --git a/docs/04-troubleshooting/vault.md b/docs/04-troubleshooting/vault.md index 246c1879..7e079891 100644 --- a/docs/04-troubleshooting/vault.md +++ b/docs/04-troubleshooting/vault.md @@ -166,11 +166,11 @@ Set-Acl "$env:USERPROFILE\.pass-cli\vault.enc" $acl ``` **Prevention**: -- ✅ Enable recovery phrase during init (it's enabled by default) -- ✅ Write recovery phrase on paper and store in safe -- ✅ Write master password in secure location -- ✅ Store master password in another password manager -- ✅ Keep backup of master password +- [OK] Enable recovery phrase during init (it's enabled by default) +- [OK] Write recovery phrase on paper and store in safe +- [OK] Write master password in secure location +- [OK] Store master password in another password manager +- [OK] Keep backup of master password --- diff --git a/docs/05-operations/health-checks.md b/docs/05-operations/health-checks.md index fb6e6852..248d2599 100644 --- a/docs/05-operations/health-checks.md +++ b/docs/05-operations/health-checks.md @@ -40,11 +40,11 @@ Produces formatted output with status indicators: Health Check Results ==================== -✓ Version: v1.2.3 (up to date) -✓ Vault: vault.enc accessible (600 permissions) -✓ Config: Valid configuration -✓ Keychain: Integration active -✓ Backup: 3 backup files found +[PASS] Version: v1.2.3 (up to date) +[PASS] Vault: vault.enc accessible (600 permissions) +[PASS] Config: Valid configuration +[PASS] Keychain: Integration active +[PASS] Backup: 3 backup files found Overall Status: HEALTHY ``` @@ -152,7 +152,7 @@ esac **Symptom**: ``` -✓ Version: Current version: v1.2.3 (unable to check for updates: offline) +[PASS] Version: Current version: v1.2.3 (unable to check for updates: offline) ``` **Details**: The check gracefully falls back when offline. This is not an error - it just means the version check couldn't reach GitHub. Your current version information is still displayed. @@ -163,7 +163,7 @@ esac **Symptom**: ``` -✗ Vault: Vault file not found +[FAIL] Vault: Vault file not found Recommendation: Run 'pass-cli init' to create a new vault ``` @@ -173,7 +173,7 @@ esac **Symptom**: ``` -✗ Vault: Vault file has insecure permissions (644) +[FAIL] Vault: Vault file has insecure permissions (644) Recommendation: Run 'chmod 600 /home/user/.pass-cli/vault.enc' ``` @@ -189,7 +189,7 @@ On Windows, ensure only your user account has read/write access. **Symptom**: ``` -✗ Vault: Vault file is corrupted or tampered +[FAIL] Vault: Vault file is corrupted or tampered Recommendation: Restore from backup or reinitialize vault ``` @@ -204,7 +204,7 @@ On Windows, ensure only your user account has read/write access. **Symptom**: ``` -✗ Config: Invalid YAML syntax at line 5 +[FAIL] Config: Invalid YAML syntax at line 5 Recommendation: Fix configuration syntax or delete to use defaults ``` @@ -214,7 +214,7 @@ On Windows, ensure only your user account has read/write access. **Symptom**: ``` -✓ Config: Using default configuration +[PASS] Config: Using default configuration ``` **Details**: This is normal if you haven't customized your configuration. The system uses sensible defaults. @@ -239,7 +239,7 @@ On Windows, ensure only your user account has read/write access. **Symptom**: ``` -✗ Keychain: Access denied by OS +[FAIL] Keychain: Access denied by OS Recommendation: Grant keychain access in system settings ``` @@ -388,7 +388,7 @@ If you run `doctor` on a fresh installation: ```bash $ pass-cli doctor -✗ Vault: Vault file not found +[FAIL] Vault: Vault file not found Recommendation: Run 'pass-cli init' to create a new vault Overall Status: ERROR (exit code 2) diff --git a/docs/05-operations/security-operations.md b/docs/05-operations/security-operations.md index fcd4c983..4aa5b383 100644 --- a/docs/05-operations/security-operations.md +++ b/docs/05-operations/security-operations.md @@ -12,10 +12,10 @@ Best practices, security checklist, incident response procedures, and security a 1. **Strong Master Password** ``` - ✅ Good: "correct-horse-battery-staple-29!" (33 chars) - ✅ Good: "MyD0g!sN@med$potAnd1L0veH1m" (29 chars) - ❌ Bad: "password123" (11 chars, common) - ❌ Bad: "MyPassword1" (11 chars, predictable) + [OK] Good: "correct-horse-battery-staple-29!" (33 chars) + [OK] Good: "MyD0g!sN@med$potAnd1L0veH1m" (29 chars) + [ERROR] Bad: "password123" (11 chars, common) + [ERROR] Bad: "MyPassword1" (11 chars, predictable) ``` 2. **Password Storage** @@ -45,10 +45,10 @@ Best practices, security checklist, incident response procedures, and security a 3. **Script Security** ```bash - # ✅ Good: Use quiet mode to avoid logging + # [OK] Good: Use quiet mode to avoid logging export API_KEY=$(pass-cli get service --quiet) - # ❌ Bad: Full output might be logged + # [ERROR] Bad: Full output might be logged export API_KEY=$(pass-cli get service) ``` @@ -64,7 +64,7 @@ Best practices, security checklist, incident response procedures, and security a ### TUI-Specific Security 1. **Screen Privacy** - - ⚠️ **Shoulder Surfing Risk**: TUI displays credential list on screen + - [WARNING] **Shoulder Surfing Risk**: TUI displays credential list on screen - Use privacy screen protector in public spaces - Be aware of people nearby when using TUI - Consider using CLI mode for sensitive environments diff --git a/docs/06-development/branch-workflow.md b/docs/06-development/branch-workflow.md index 45cce529..16425267 100644 --- a/docs/06-development/branch-workflow.md +++ b/docs/06-development/branch-workflow.md @@ -129,8 +129,8 @@ The release workflow will: ### Main Branch Protection **Enabled protections:** -- ✅ Require pull request before merging -- ✅ Require status checks to pass: +- [OK] Require pull request before merging +- [OK] Require status checks to pass: - `Detect Code Changes` - `Lint` - `Unit Tests` @@ -139,9 +139,9 @@ The release workflow will: - `Integration Tests (windows-latest)` - `Security Scan` - `Build` -- ✅ Block force pushes -- ✅ Restrict deletions -- ✅ Repository admins can bypass (for emergency fixes) +- [OK] Block force pushes +- [OK] Restrict deletions +- [OK] Repository admins can bypass (for emergency fixes) **Result**: All changes require PR and passing CI. Direct pushes blocked. diff --git a/docs/06-development/homebrew.md b/docs/06-development/homebrew.md index dfe8f025..e5a12193 100644 --- a/docs/06-development/homebrew.md +++ b/docs/06-development/homebrew.md @@ -132,7 +132,7 @@ Test on all supported platforms: ### Prerequisites 1. **Stable Release**: Must have a stable version with release artifacts -2. **Open Source**: Must have an OSI-approved license (MIT ✓) +2. **Open Source**: Must have an OSI-approved license (MIT [PASS]) 3. **Notable Project**: Should have some community adoption 4. **Documentation**: README, LICENSE, and proper documentation @@ -241,20 +241,20 @@ done ## Formula Best Practices ### Do's -- ✅ Use stable release URLs (not `latest`) -- ✅ Include accurate SHA256 checksums -- ✅ Support all relevant platforms -- ✅ Include meaningful tests -- ✅ Add shell completion generation -- ✅ Provide helpful caveats for first-time users -- ✅ Keep formula simple and maintainable +- [OK] Use stable release URLs (not `latest`) +- [OK] Include accurate SHA256 checksums +- [OK] Support all relevant platforms +- [OK] Include meaningful tests +- [OK] Add shell completion generation +- [OK] Provide helpful caveats for first-time users +- [OK] Keep formula simple and maintainable ### Don'ts -- ❌ Don't use `latest` tag in URLs -- ❌ Don't skip checksums -- ❌ Don't include build-time patches without good reason -- ❌ Don't add unnecessary dependencies -- ❌ Don't use deprecated Homebrew DSL features +- [ERROR] Don't use `latest` tag in URLs +- [ERROR] Don't skip checksums +- [ERROR] Don't include build-time patches without good reason +- [ERROR] Don't add unnecessary dependencies +- [ERROR] Don't use deprecated Homebrew DSL features ## Troubleshooting diff --git a/docs/06-development/scoop.md b/docs/06-development/scoop.md index 53df1f69..edadaef4 100644 --- a/docs/06-development/scoop.md +++ b/docs/06-development/scoop.md @@ -240,7 +240,7 @@ checksum: ### Prerequisites 1. **Stable Release**: Must have a stable version with release artifacts -2. **Open Source**: Must have an OSI-approved license (MIT ✓) +2. **Open Source**: Must have an OSI-approved license (MIT [PASS]) 3. **Windows Binary**: Must provide Windows executables 4. **Documentation**: README and LICENSE required @@ -248,7 +248,7 @@ checksum: - **Main Bucket**: Command-line tools that don't require GUI - Repository: [ScoopInstaller/Main](https://github.com/ScoopInstaller/Main) - - Best fit for Pass-CLI ✓ + - Best fit for Pass-CLI [PASS] - **Extras Bucket**: GUI apps and less common tools - Repository: [ScoopInstaller/Extras](https://github.com/ScoopInstaller/Extras) @@ -396,22 +396,22 @@ Usage: ## Manifest Best Practices ### Do's -- ✅ Use stable release URLs (not `latest`) -- ✅ Include accurate SHA256 hashes -- ✅ Support all relevant architectures -- ✅ Configure autoupdate correctly -- ✅ Provide helpful post-install messages -- ✅ Use proper JSON formatting -- ✅ Test on all supported architectures -- ✅ Follow Scoop manifest conventions +- [OK] Use stable release URLs (not `latest`) +- [OK] Include accurate SHA256 hashes +- [OK] Support all relevant architectures +- [OK] Configure autoupdate correctly +- [OK] Provide helpful post-install messages +- [OK] Use proper JSON formatting +- [OK] Test on all supported architectures +- [OK] Follow Scoop manifest conventions ### Don'ts -- ❌ Don't use `latest` tag in URLs -- ❌ Don't skip hash validation -- ❌ Don't hardcode version numbers in autoupdate URLs -- ❌ Don't include unnecessary dependencies -- ❌ Don't use deprecated manifest features -- ❌ Don't forget to update checksums.txt +- [ERROR] Don't use `latest` tag in URLs +- [ERROR] Don't skip hash validation +- [ERROR] Don't hardcode version numbers in autoupdate URLs +- [ERROR] Don't include unnecessary dependencies +- [ERROR] Don't use deprecated manifest features +- [ERROR] Don't forget to update checksums.txt ## Troubleshooting From 980af9d1a4464a7036bcb65876d33a11dde9f783 Mon Sep 17 00:00:00 2001 From: Ari Date: Tue, 18 Nov 2025 17:18:31 -0500 Subject: [PATCH 04/19] docs: delete old doc-manager files --- .doc-manager.yml | 8 - .doc-manager/asset-manifest.json | 5 - .doc-manager/dependencies.json | 1979 ------------------------ .doc-manager/memory/doc-conventions.md | 41 - .doc-manager/memory/repo-baseline.json | 783 ---------- 5 files changed, 2816 deletions(-) delete mode 100644 .doc-manager.yml delete mode 100644 .doc-manager/asset-manifest.json delete mode 100644 .doc-manager/dependencies.json delete mode 100644 .doc-manager/memory/doc-conventions.md delete mode 100644 .doc-manager/memory/repo-baseline.json diff --git a/.doc-manager.yml b/.doc-manager.yml deleted file mode 100644 index 8da7f594..00000000 --- a/.doc-manager.yml +++ /dev/null @@ -1,8 +0,0 @@ -platform: hugo -exclude: [] -sources: [] -docs_path: docs -metadata: - language: Go - created: '2025-11-17T12:39:34.080505' - version: 1.0.0 diff --git a/.doc-manager/asset-manifest.json b/.doc-manager/asset-manifest.json deleted file mode 100644 index 56fbbfb3..00000000 --- a/.doc-manager/asset-manifest.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "assets": [], - "created_at": "2025-11-17T12:40:05.357953", - "last_updated": "2025-11-17T12:40:05.357972" -} \ No newline at end of file diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json deleted file mode 100644 index 633490e4..00000000 --- a/.doc-manager/dependencies.json +++ /dev/null @@ -1,1979 +0,0 @@ -{ - "generated_at": "2025-11-17T13:23:15.383473", - "doc_to_code": { - "01-getting-started\\manual-install.md": [], - "01-getting-started\\quick-start.md": [ - "cmd/add.go", - "cmd/delete.go", - "cmd/doctor.go", - "cmd/get.go", - "cmd/init.go", - "cmd/list.go", - "cmd/update.go", - "cmd/version.go" - ], - "02-guides\\backup-restore.md": [], - "02-guides\\basic-workflows.md": [], - "02-guides\\keychain-setup.md": [], - "02-guides\\recovery-phrase.md": [], - "02-guides\\scripting-guide.md": [], - "02-guides\\tui-guide.md": [], - "02-guides\\usage-tracking.md": [], - "03-reference\\command-reference.md": [ - "cmd/add.go", - "cmd/config.go", - "cmd/delete.go", - "cmd/get.go", - "cmd/list.go", - "cmd/update.go", - "docsite/public/en.search-data.json" - ], - "03-reference\\configuration.md": [], - "03-reference\\known-limitations.md": [ - "cmd/tui/events/handlers.go" - ], - "03-reference\\migration.md": [], - "03-reference\\security-architecture.md": [], - "04-troubleshooting\\faq.md": [], - "04-troubleshooting\\tui.md": [], - "04-troubleshooting\\vault.md": [], - "05-operations\\health-checks.md": [ - "cmd/doctor.go" - ], - "05-operations\\security-operations.md": [], - "06-development\\branch-workflow.md": [], - "06-development\\ci-cd.md": [], - "06-development\\contributing.md": [], - "06-development\\documentation-lifecycle.md": [], - "06-development\\homebrew.md": [ - "homebrew/pass-cli.rb" - ], - "06-development\\release.md": [ - ".goreleaser.yml" - ], - "06-development\\scoop.md": [ - ".goreleaser.yml", - "scoop/pass-cli.json" - ] - }, - "code_to_doc": { - "cmd/add.go": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "cmd/delete.go": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "cmd/doctor.go": [ - "01-getting-started\\quick-start.md", - "05-operations\\health-checks.md" - ], - "cmd/get.go": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "cmd/init.go": [ - "01-getting-started\\quick-start.md" - ], - "cmd/list.go": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "cmd/update.go": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "cmd/version.go": [ - "01-getting-started\\quick-start.md" - ], - "cmd/config.go": [ - "03-reference\\command-reference.md" - ], - "docsite/public/en.search-data.json": [ - "03-reference\\command-reference.md" - ], - "cmd/tui/events/handlers.go": [ - "03-reference\\known-limitations.md" - ], - "homebrew/pass-cli.rb": [ - "06-development\\homebrew.md" - ], - ".goreleaser.yml": [ - "06-development\\release.md", - "06-development\\scoop.md" - ], - "scoop/pass-cli.json": [ - "06-development\\scoop.md" - ], - "grep": [ - "01-getting-started\\manual-install.md" - ], - "pass-cli": [ - "01-getting-started\\manual-install.md", - "02-guides\\tui-guide.md" - ], - "checksums.txt": [ - "01-getting-started\\manual-install.md", - "06-development\\scoop.md" - ], - "add": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "get": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "list": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "update": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "delete": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "version": [ - "01-getting-started\\quick-start.md" - ], - "doctor": [ - "01-getting-started\\quick-start.md", - "05-operations\\health-checks.md" - ], - "help": [ - "01-getting-started\\quick-start.md", - "03-reference\\configuration.md" - ], - "init": [ - "01-getting-started\\quick-start.md" - ], - "pass-cli list": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "echo": [ - "01-getting-started\\quick-start.md" - ], - "pass-cli add github": [ - "01-getting-started\\quick-start.md" - ], - "vault_path": [ - "01-getting-started\\quick-start.md", - "02-guides\\scripting-guide.md", - "03-reference\\configuration.md", - "03-reference\\migration.md", - "05-operations\\health-checks.md" - ], - "info": [ - "02-guides\\backup-restore.md" - ], - "pass-cli vault backup info": [ - "02-guides\\backup-restore.md" - ], - "pass-cli vault backup create": [ - "02-guides\\backup-restore.md" - ], - "pass-cli doctor": [ - "02-guides\\backup-restore.md", - "02-guides\\basic-workflows.md", - "02-guides\\keychain-setup.md", - "05-operations\\health-checks.md" - ], - "vault.enc.backup": [ - "02-guides\\backup-restore.md", - "03-reference\\command-reference.md", - "03-reference\\security-architecture.md", - "04-troubleshooting\\vault.md" - ], - "secret-tool clear service pass-cli": [ - "02-guides\\basic-workflows.md" - ], - "jq": [ - "02-guides\\basic-workflows.md", - "05-operations\\health-checks.md" - ], - "pass-cli get github": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli generate": [ - "02-guides\\basic-workflows.md", - "03-reference\\command-reference.md", - "03-reference\\migration.md", - "05-operations\\security-operations.md" - ], - "pass-cli generate --length": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli add github -u": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli update github --generate": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli update github --generate --gen-length": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli keychain enable": [ - "02-guides\\basic-workflows.md", - "02-guides\\keychain-setup.md" - ], - "pass-cli keychain status": [ - "02-guides\\basic-workflows.md", - "02-guides\\keychain-setup.md" - ], - "pass-cli get github --json": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli init": [ - "02-guides\\recovery-phrase.md", - "03-reference\\command-reference.md", - "03-reference\\migration.md", - "04-troubleshooting\\vault.md", - "05-operations\\health-checks.md", - "05-operations\\security-operations.md" - ], - "change-password --recover": [ - "02-guides\\recovery-phrase.md" - ], - "Tab": [ - "02-guides\\tui-guide.md" - ], - "Enter": [ - "02-guides\\tui-guide.md" - ], - "Esc": [ - "02-guides\\tui-guide.md", - "04-troubleshooting\\tui.md" - ], - "pass-cli get": [ - "02-guides\\tui-guide.md", - "04-troubleshooting\\tui.md" - ], - "auto": [ - "02-guides\\tui-guide.md" - ], - "right": [ - "02-guides\\tui-guide.md" - ], - "bottom": [ - "02-guides\\tui-guide.md" - ], - "detail_position": [ - "02-guides\\tui-guide.md" - ], - "detail_auto_threshold": [ - "02-guides\\tui-guide.md" - ], - "pass-cli list --by-project": [ - "02-guides\\usage-tracking.md" - ], - "MyPassword": [ - "03-reference\\command-reference.md" - ], - "EDITOR": [ - "03-reference\\command-reference.md" - ], - "password123": [ - "03-reference\\command-reference.md" - ], - "pass-cli change-password --recover": [ - "03-reference\\command-reference.md", - "03-reference\\migration.md", - "03-reference\\security-architecture.md", - "04-troubleshooting\\vault.md" - ], - "username": [ - "03-reference\\command-reference.md" - ], - "password": [ - "03-reference\\command-reference.md" - ], - "url": [ - "03-reference\\command-reference.md" - ], - "notes": [ - "03-reference\\command-reference.md" - ], - "service": [ - "03-reference\\command-reference.md" - ], - "created": [ - "03-reference\\command-reference.md" - ], - "modified": [ - "03-reference\\command-reference.md" - ], - "accessed": [ - "03-reference\\command-reference.md" - ], - "gen": [ - "03-reference\\command-reference.md" - ], - "pwd": [ - "03-reference\\command-reference.md" - ], - "a-z": [ - "03-reference\\command-reference.md" - ], - "table": [ - "03-reference\\command-reference.md" - ], - "json": [ - "03-reference\\command-reference.md" - ], - "simple": [ - "03-reference\\command-reference.md" - ], - "config reset": [ - "03-reference\\command-reference.md" - ], - "audit-log-path": [ - "03-reference\\command-reference.md" - ], - "pass-cli init --enable-audit": [ - "03-reference\\command-reference.md" - ], - "pass-cli get github --quiet": [ - "03-reference\\command-reference.md" - ], - "pass-cli get github --field": [ - "03-reference\\command-reference.md" - ], - "quit": [ - "03-reference\\configuration.md" - ], - "search": [ - "03-reference\\configuration.md" - ], - "add_credential": [ - "03-reference\\configuration.md" - ], - "edit_credential": [ - "03-reference\\configuration.md" - ], - "delete_credential": [ - "03-reference\\configuration.md" - ], - "toggle_detail": [ - "03-reference\\configuration.md" - ], - "toggle_sidebar": [ - "03-reference\\configuration.md" - ], - "InputField": [ - "03-reference\\known-limitations.md" - ], - "string": [ - "03-reference\\known-limitations.md" - ], - "defer": [ - "03-reference\\known-limitations.md" - ], - "pass-cli migrate": [ - "03-reference\\migration.md" - ], - "pass-cli verify-audit": [ - "03-reference\\migration.md", - "03-reference\\security-architecture.md" - ], - "CryptGenRandom": [ - "03-reference\\security-architecture.md" - ], - "fsync": [ - "03-reference\\security-architecture.md" - ], - "vault.enc": [ - "03-reference\\security-architecture.md", - "04-troubleshooting\\vault.md" - ], - "change-password": [ - "04-troubleshooting\\faq.md" - ], - "Backspace": [ - "04-troubleshooting\\tui.md" - ], - "libsecret": [ - "05-operations\\health-checks.md" - ], - "apt-get install libsecret-1-0": [ - "05-operations\\health-checks.md" - ], - "keyring": [ - "05-operations\\health-checks.md" - ], - "gnome-keyring": [ - "05-operations\\health-checks.md" - ], - "pass-cli update service": [ - "05-operations\\security-operations.md" - ], - "pass-cli get service --json": [ - "05-operations\\security-operations.md" - ], - "history -c": [ - "05-operations\\security-operations.md" - ], - "Lint": [ - "06-development\\branch-workflow.md" - ], - "Build": [ - "06-development\\branch-workflow.md" - ], - "main": [ - "06-development\\branch-workflow.md", - "06-development\\ci-cd.md" - ], - "ci.yml": [ - "06-development\\ci-cd.md" - ], - "release.yml": [ - "06-development\\ci-cd.md" - ], - "contents": [ - "06-development\\ci-cd.md" - ], - "packages": [ - "06-development\\ci-cd.md" - ], - "go vet": [ - "06-development\\contributing.md" - ], - "gofmt": [ - "06-development\\contributing.md" - ], - "git log --follow": [ - "06-development\\documentation-lifecycle.md" - ], - "docs": [ - "06-development\\documentation-lifecycle.md" - ], - "latest": [ - "06-development\\homebrew.md", - "06-development\\scoop.md" - ], - "brew test pass-cli": [ - "06-development\\homebrew.md" - ], - "netgo": [ - "06-development\\release.md" - ], - "scoop hash": [ - "06-development\\scoop.md" - ], - "scoop checkver pass-cli -u": [ - "06-development\\scoop.md" - ], - "scoop checkver pass-cli": [ - "06-development\\scoop.md" - ], - "pass-cli version": [ - "06-development\\scoop.md" - ], - "pass-cli --help": [ - "06-development\\scoop.md" - ] - }, - "reference_to_doc": { - "grep": [ - "01-getting-started\\manual-install.md" - ], - "pass-cli": [ - "01-getting-started\\manual-install.md", - "02-guides\\tui-guide.md" - ], - "checksums.txt": [ - "01-getting-started\\manual-install.md", - "06-development\\scoop.md" - ], - "add": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "get": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "list": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "update": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "delete": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "version": [ - "01-getting-started\\quick-start.md" - ], - "doctor": [ - "01-getting-started\\quick-start.md", - "05-operations\\health-checks.md" - ], - "help": [ - "01-getting-started\\quick-start.md", - "03-reference\\configuration.md" - ], - "init": [ - "01-getting-started\\quick-start.md" - ], - "pass-cli list": [ - "01-getting-started\\quick-start.md", - "03-reference\\command-reference.md" - ], - "echo": [ - "01-getting-started\\quick-start.md" - ], - "pass-cli add github": [ - "01-getting-started\\quick-start.md" - ], - "vault_path": [ - "01-getting-started\\quick-start.md", - "02-guides\\scripting-guide.md", - "03-reference\\configuration.md", - "03-reference\\migration.md", - "05-operations\\health-checks.md" - ], - "info": [ - "02-guides\\backup-restore.md" - ], - "pass-cli vault backup info": [ - "02-guides\\backup-restore.md" - ], - "pass-cli vault backup create": [ - "02-guides\\backup-restore.md" - ], - "pass-cli doctor": [ - "02-guides\\backup-restore.md", - "02-guides\\basic-workflows.md", - "02-guides\\keychain-setup.md", - "05-operations\\health-checks.md" - ], - "vault.enc.backup": [ - "02-guides\\backup-restore.md", - "03-reference\\command-reference.md", - "03-reference\\security-architecture.md", - "04-troubleshooting\\vault.md" - ], - "secret-tool clear service pass-cli": [ - "02-guides\\basic-workflows.md" - ], - "jq": [ - "02-guides\\basic-workflows.md", - "05-operations\\health-checks.md" - ], - "pass-cli get github": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli generate": [ - "02-guides\\basic-workflows.md", - "03-reference\\command-reference.md", - "03-reference\\migration.md", - "05-operations\\security-operations.md" - ], - "pass-cli generate --length": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli add github -u": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli update github --generate": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli update github --generate --gen-length": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli keychain enable": [ - "02-guides\\basic-workflows.md", - "02-guides\\keychain-setup.md" - ], - "pass-cli keychain status": [ - "02-guides\\basic-workflows.md", - "02-guides\\keychain-setup.md" - ], - "pass-cli get github --json": [ - "02-guides\\basic-workflows.md" - ], - "pass-cli init": [ - "02-guides\\recovery-phrase.md", - "03-reference\\command-reference.md", - "03-reference\\migration.md", - "04-troubleshooting\\vault.md", - "05-operations\\health-checks.md", - "05-operations\\security-operations.md" - ], - "change-password --recover": [ - "02-guides\\recovery-phrase.md" - ], - "Tab": [ - "02-guides\\tui-guide.md" - ], - "Enter": [ - "02-guides\\tui-guide.md" - ], - "Esc": [ - "02-guides\\tui-guide.md", - "04-troubleshooting\\tui.md" - ], - "pass-cli get": [ - "02-guides\\tui-guide.md", - "04-troubleshooting\\tui.md" - ], - "auto": [ - "02-guides\\tui-guide.md" - ], - "right": [ - "02-guides\\tui-guide.md" - ], - "bottom": [ - "02-guides\\tui-guide.md" - ], - "detail_position": [ - "02-guides\\tui-guide.md" - ], - "detail_auto_threshold": [ - "02-guides\\tui-guide.md" - ], - "pass-cli list --by-project": [ - "02-guides\\usage-tracking.md" - ], - "MyPassword": [ - "03-reference\\command-reference.md" - ], - "EDITOR": [ - "03-reference\\command-reference.md" - ], - "password123": [ - "03-reference\\command-reference.md" - ], - "pass-cli change-password --recover": [ - "03-reference\\command-reference.md", - "03-reference\\migration.md", - "03-reference\\security-architecture.md", - "04-troubleshooting\\vault.md" - ], - "username": [ - "03-reference\\command-reference.md" - ], - "password": [ - "03-reference\\command-reference.md" - ], - "url": [ - "03-reference\\command-reference.md" - ], - "notes": [ - "03-reference\\command-reference.md" - ], - "service": [ - "03-reference\\command-reference.md" - ], - "created": [ - "03-reference\\command-reference.md" - ], - "modified": [ - "03-reference\\command-reference.md" - ], - "accessed": [ - "03-reference\\command-reference.md" - ], - "gen": [ - "03-reference\\command-reference.md" - ], - "pwd": [ - "03-reference\\command-reference.md" - ], - "a-z": [ - "03-reference\\command-reference.md" - ], - "table": [ - "03-reference\\command-reference.md" - ], - "json": [ - "03-reference\\command-reference.md" - ], - "simple": [ - "03-reference\\command-reference.md" - ], - "config reset": [ - "03-reference\\command-reference.md" - ], - "audit-log-path": [ - "03-reference\\command-reference.md" - ], - "pass-cli init --enable-audit": [ - "03-reference\\command-reference.md" - ], - "pass-cli get github --quiet": [ - "03-reference\\command-reference.md" - ], - "pass-cli get github --field": [ - "03-reference\\command-reference.md" - ], - "quit": [ - "03-reference\\configuration.md" - ], - "search": [ - "03-reference\\configuration.md" - ], - "add_credential": [ - "03-reference\\configuration.md" - ], - "edit_credential": [ - "03-reference\\configuration.md" - ], - "delete_credential": [ - "03-reference\\configuration.md" - ], - "toggle_detail": [ - "03-reference\\configuration.md" - ], - "toggle_sidebar": [ - "03-reference\\configuration.md" - ], - "InputField": [ - "03-reference\\known-limitations.md" - ], - "string": [ - "03-reference\\known-limitations.md" - ], - "defer": [ - "03-reference\\known-limitations.md" - ], - "pass-cli migrate": [ - "03-reference\\migration.md" - ], - "pass-cli verify-audit": [ - "03-reference\\migration.md", - "03-reference\\security-architecture.md" - ], - "CryptGenRandom": [ - "03-reference\\security-architecture.md" - ], - "fsync": [ - "03-reference\\security-architecture.md" - ], - "vault.enc": [ - "03-reference\\security-architecture.md", - "04-troubleshooting\\vault.md" - ], - "change-password": [ - "04-troubleshooting\\faq.md" - ], - "Backspace": [ - "04-troubleshooting\\tui.md" - ], - "libsecret": [ - "05-operations\\health-checks.md" - ], - "apt-get install libsecret-1-0": [ - "05-operations\\health-checks.md" - ], - "keyring": [ - "05-operations\\health-checks.md" - ], - "gnome-keyring": [ - "05-operations\\health-checks.md" - ], - "pass-cli update service": [ - "05-operations\\security-operations.md" - ], - "pass-cli get service --json": [ - "05-operations\\security-operations.md" - ], - "history -c": [ - "05-operations\\security-operations.md" - ], - ".github/workflows/release.yml": [ - "06-development\\branch-workflow.md", - "06-development\\release.md" - ], - ".github/workflows/ci.yml": [ - "06-development\\branch-workflow.md" - ], - "Lint": [ - "06-development\\branch-workflow.md" - ], - "Build": [ - "06-development\\branch-workflow.md" - ], - "main": [ - "06-development\\branch-workflow.md", - "06-development\\ci-cd.md" - ], - "ci.yml": [ - "06-development\\ci-cd.md" - ], - "release.yml": [ - "06-development\\ci-cd.md" - ], - ".github/dependabot.yml": [ - "06-development\\ci-cd.md" - ], - "contents": [ - "06-development\\ci-cd.md" - ], - "packages": [ - "06-development\\ci-cd.md" - ], - "go vet": [ - "06-development\\contributing.md" - ], - "gofmt": [ - "06-development\\contributing.md" - ], - "git log --follow": [ - "06-development\\documentation-lifecycle.md" - ], - "docs": [ - "06-development\\documentation-lifecycle.md" - ], - "homebrew/pass-cli.rb": [ - "06-development\\homebrew.md" - ], - "Formula/pass-cli.rb": [ - "06-development\\homebrew.md" - ], - "latest": [ - "06-development\\homebrew.md", - "06-development\\scoop.md" - ], - "brew test pass-cli": [ - "06-development\\homebrew.md" - ], - "update-docs-version.yml": [ - "06-development\\release.md" - ], - ".goreleaser.yml": [ - "06-development\\release.md", - "06-development\\scoop.md" - ], - "netgo": [ - "06-development\\release.md" - ], - "scoop/pass-cli.json": [ - "06-development\\scoop.md" - ], - "bucket/pass-cli.json": [ - "06-development\\scoop.md" - ], - "scoop hash": [ - "06-development\\scoop.md" - ], - "scoop checkver pass-cli -u": [ - "06-development\\scoop.md" - ], - "scoop checkver pass-cli": [ - "06-development\\scoop.md" - ], - "pass-cli version": [ - "06-development\\scoop.md" - ], - "pass-cli --help": [ - "06-development\\scoop.md" - ] - }, - "all_references": { - "command": [ - { - "reference": "grep", - "doc_file": "01-getting-started\\manual-install.md" - }, - { - "reference": "pass-cli", - "doc_file": "01-getting-started\\manual-install.md" - }, - { - "reference": "add", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "get", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "list", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "update", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "delete", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "version", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "doctor", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "help", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "init", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "pass-cli list", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "echo", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "pass-cli add github", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "info", - "doc_file": "02-guides\\backup-restore.md" - }, - { - "reference": "pass-cli vault backup info", - "doc_file": "02-guides\\backup-restore.md" - }, - { - "reference": "pass-cli vault backup create", - "doc_file": "02-guides\\backup-restore.md" - }, - { - "reference": "pass-cli doctor", - "doc_file": "02-guides\\backup-restore.md" - }, - { - "reference": "secret-tool clear service pass-cli", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "jq", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli get github", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli generate", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli generate --length", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli generate", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli add github -u", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli add github -u", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli update github --generate", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli update github --generate --gen-length", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli keychain enable", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli keychain status", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli keychain status", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli get github --json", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli doctor", - "doc_file": "02-guides\\basic-workflows.md" - }, - { - "reference": "pass-cli keychain enable", - "doc_file": "02-guides\\keychain-setup.md" - }, - { - "reference": "pass-cli keychain status", - "doc_file": "02-guides\\keychain-setup.md" - }, - { - "reference": "pass-cli keychain status", - "doc_file": "02-guides\\keychain-setup.md" - }, - { - "reference": "pass-cli doctor", - "doc_file": "02-guides\\keychain-setup.md" - }, - { - "reference": "pass-cli init", - "doc_file": "02-guides\\recovery-phrase.md" - }, - { - "reference": "pass-cli init", - "doc_file": "02-guides\\recovery-phrase.md" - }, - { - "reference": "pass-cli init", - "doc_file": "02-guides\\recovery-phrase.md" - }, - { - "reference": "change-password --recover", - "doc_file": "02-guides\\recovery-phrase.md" - }, - { - "reference": "pass-cli init", - "doc_file": "02-guides\\recovery-phrase.md" - }, - { - "reference": "pass-cli", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "pass-cli get", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "auto", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "right", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "bottom", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "pass-cli", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "pass-cli list --by-project", - "doc_file": "02-guides\\usage-tracking.md" - }, - { - "reference": "password123", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli change-password --recover", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli generate", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "username", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "password", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "url", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "notes", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "service", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "created", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "modified", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "accessed", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli init", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli init", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "gen", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pwd", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "a-z", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "table", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "table", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "json", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "simple", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "get", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "config reset", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "audit-log-path", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli init --enable-audit", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "add", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "get", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "list", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "update", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "delete", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli init", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli list", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli init", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli get github --quiet", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pass-cli get github --field", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "quit", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "help", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "search", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "string", - "doc_file": "03-reference\\known-limitations.md" - }, - { - "reference": "defer", - "doc_file": "03-reference\\known-limitations.md" - }, - { - "reference": "pass-cli migrate", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "pass-cli verify-audit", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "pass-cli init", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "pass-cli change-password --recover", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "pass-cli generate", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "pass-cli verify-audit", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "fsync", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "pass-cli verify-audit", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "pass-cli change-password --recover", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "change-password", - "doc_file": "04-troubleshooting\\faq.md" - }, - { - "reference": "pass-cli get", - "doc_file": "04-troubleshooting\\tui.md" - }, - { - "reference": "pass-cli get", - "doc_file": "04-troubleshooting\\tui.md" - }, - { - "reference": "pass-cli init", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "pass-cli change-password --recover", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "pass-cli doctor", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "pass-cli init", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "pass-cli init", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "libsecret", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "apt-get install libsecret-1-0", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "keyring", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "gnome-keyring", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "jq", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "doctor", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "pass-cli init", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "doctor", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "pass-cli doctor", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "pass-cli generate", - "doc_file": "05-operations\\security-operations.md" - }, - { - "reference": "pass-cli init", - "doc_file": "05-operations\\security-operations.md" - }, - { - "reference": "pass-cli generate", - "doc_file": "05-operations\\security-operations.md" - }, - { - "reference": "pass-cli update service", - "doc_file": "05-operations\\security-operations.md" - }, - { - "reference": "pass-cli get service --json", - "doc_file": "05-operations\\security-operations.md" - }, - { - "reference": "history -c", - "doc_file": "05-operations\\security-operations.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "main", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "main", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "go vet", - "doc_file": "06-development\\contributing.md" - }, - { - "reference": "gofmt", - "doc_file": "06-development\\contributing.md" - }, - { - "reference": "git log --follow", - "doc_file": "06-development\\documentation-lifecycle.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\homebrew.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\homebrew.md" - }, - { - "reference": "brew test pass-cli", - "doc_file": "06-development\\homebrew.md" - }, - { - "reference": "netgo", - "doc_file": "06-development\\release.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "scoop hash", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "scoop checkver pass-cli -u", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "scoop checkver pass-cli", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "pass-cli version", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "pass-cli --help", - "doc_file": "06-development\\scoop.md" - } - ], - "config_key": [ - { - "reference": "checksums.txt", - "doc_file": "01-getting-started\\manual-install.md" - }, - { - "reference": "grep", - "doc_file": "01-getting-started\\manual-install.md" - }, - { - "reference": "add", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "get", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "list", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "update", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "delete", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "vault_path", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "version", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "doctor", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "help", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "init", - "doc_file": "01-getting-started\\quick-start.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "02-guides\\backup-restore.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "02-guides\\backup-restore.md" - }, - { - "reference": "info", - "doc_file": "02-guides\\backup-restore.md" - }, - { - "reference": "vault_path", - "doc_file": "02-guides\\scripting-guide.md" - }, - { - "reference": "detail_position", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "detail_position", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "detail_position", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "detail_position", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "auto", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "right", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "bottom", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "detail_auto_threshold", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "detail_auto_threshold", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "password123", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "username", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "password", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "url", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "notes", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "service", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "created", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "modified", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "accessed", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "gen", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "pwd", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "table", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "table", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "json", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "simple", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "get", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "add", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "get", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "list", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "update", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "delete", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "vault_path", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "vault_path", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "quit", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "add_credential", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "edit_credential", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "delete_credential", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "toggle_detail", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "toggle_sidebar", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "help", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "search", - "doc_file": "03-reference\\configuration.md" - }, - { - "reference": "string", - "doc_file": "03-reference\\known-limitations.md" - }, - { - "reference": "defer", - "doc_file": "03-reference\\known-limitations.md" - }, - { - "reference": "vault_path", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "vault_path", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "vault_path", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "vault_path", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "vault_path", - "doc_file": "03-reference\\migration.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "vault.enc", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "vault.enc", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "fsync", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "vault.enc", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "vault.enc", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "vault.enc", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "vault.enc.backup", - "doc_file": "04-troubleshooting\\vault.md" - }, - { - "reference": "vault_path", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "vault_path", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "libsecret", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "keyring", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "doctor", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "doctor", - "doc_file": "05-operations\\health-checks.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "main", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "ci.yml", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "release.yml", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "contents", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "contents", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "packages", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "main", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "main", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "gofmt", - "doc_file": "06-development\\contributing.md" - }, - { - "reference": "docs", - "doc_file": "06-development\\documentation-lifecycle.md" - }, - { - "reference": "docs", - "doc_file": "06-development\\documentation-lifecycle.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\homebrew.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\homebrew.md" - }, - { - "reference": "netgo", - "doc_file": "06-development\\release.md" - }, - { - "reference": "checksums.txt", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "latest", - "doc_file": "06-development\\scoop.md" - } - ], - "class": [ - { - "reference": "Tab", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "Enter", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "Tab", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "Esc", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "Esc", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "Esc", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "Esc", - "doc_file": "02-guides\\tui-guide.md" - }, - { - "reference": "MyPassword", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "EDITOR", - "doc_file": "03-reference\\command-reference.md" - }, - { - "reference": "InputField", - "doc_file": "03-reference\\known-limitations.md" - }, - { - "reference": "InputField", - "doc_file": "03-reference\\known-limitations.md" - }, - { - "reference": "InputField", - "doc_file": "03-reference\\known-limitations.md" - }, - { - "reference": "CryptGenRandom", - "doc_file": "03-reference\\security-architecture.md" - }, - { - "reference": "Esc", - "doc_file": "04-troubleshooting\\tui.md" - }, - { - "reference": "Backspace", - "doc_file": "04-troubleshooting\\tui.md" - }, - { - "reference": "Lint", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "Build", - "doc_file": "06-development\\branch-workflow.md" - } - ], - "file_path": [ - { - "reference": ".github/workflows/release.yml", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": ".github/workflows/ci.yml", - "doc_file": "06-development\\branch-workflow.md" - }, - { - "reference": "ci.yml", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "release.yml", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": ".github/dependabot.yml", - "doc_file": "06-development\\ci-cd.md" - }, - { - "reference": "homebrew/pass-cli.rb", - "doc_file": "06-development\\homebrew.md" - }, - { - "reference": "Formula/pass-cli.rb", - "doc_file": "06-development\\homebrew.md" - }, - { - "reference": "update-docs-version.yml", - "doc_file": "06-development\\release.md" - }, - { - "reference": ".github/workflows/release.yml", - "doc_file": "06-development\\release.md" - }, - { - "reference": ".goreleaser.yml", - "doc_file": "06-development\\release.md" - }, - { - "reference": "scoop/pass-cli.json", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": ".goreleaser.yml", - "doc_file": "06-development\\scoop.md" - }, - { - "reference": "bucket/pass-cli.json", - "doc_file": "06-development\\scoop.md" - } - ] - } -} \ No newline at end of file diff --git a/.doc-manager/memory/doc-conventions.md b/.doc-manager/memory/doc-conventions.md deleted file mode 100644 index c2d6bea9..00000000 --- a/.doc-manager/memory/doc-conventions.md +++ /dev/null @@ -1,41 +0,0 @@ -# Documentation Conventions - -## Style Guide - -### Writing Style -- Use second person ("you") for user-facing documentation -- Use active voice for instructions -- Keep sentences concise and clear - -### Formatting -- Use sentence case for headings -- Use backticks for inline code: `code` -- Use triple backticks for code blocks with language specified - -### Terminology -- Be consistent with technical terms -- Define acronyms on first use -- Use the project's preferred naming conventions - -## Structure - -### Document Organization -- Start with a clear introduction -- Use hierarchical headings (H1 → H2 → H3) -- Do not include a table of contents - most platforms, including github, provide a native TOC - -### Code Examples -- Provide complete, runnable examples -- Include expected output -- Add comments for clarity - -## Quality Standards - -- All images must have descriptive alt text -- All links must be valid and up-to-date -- All code examples must be tested and working -- Documentation must be kept in sync with code changes - ---- - -*This file can be customized to match your project's documentation standards.* diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json deleted file mode 100644 index 50d372c7..00000000 --- a/.doc-manager/memory/repo-baseline.json +++ /dev/null @@ -1,783 +0,0 @@ -{ - "repo_name": "pass-cli", - "description": "Repository for pass-cli", - "language": "Go", - "docs_exist": true, - "docs_path": "docs", - "metadata": { - "git_commit": null, - "git_branch": null - }, - "timestamp": "2025-11-17T12:40:05.250862", - "version": "1.0.0", - "file_count": 767, - "files": { - ".claude/commands/speckit.analyze.md": "ca5debb183d8ad1b012ddcec3ca66604506e47403c7ed3d4487f726dccec6253", - ".claude/commands/speckit.archive.md": "4444744e06955088a8c3fc6781e18dd916d04bd0dae572475ecfe304b59c3948", - ".claude/commands/speckit.checklist.md": "460757d3345f45551b381fb735aba98fc1eaffda3a6a505b6420cca796b789b0", - ".claude/commands/speckit.clarify.md": "ccc9f6fdf264079a4580561a9d27517e1dbb58af985cbab792bb5c07df8566c9", - ".claude/commands/speckit.constitution.md": "5d941d150aa5aa8f2753741271c8fad687efa0b898bddfca04fe9c1ab94089c4", - ".claude/commands/speckit.implement.md": "6331fa8b1dc4079b16b69b09554dab62f05f834ccbb03c3343516df1b3ed8c08", - ".claude/commands/speckit.plan.md": "0695f2665c94425e346a8c7b2592736fbe17b95d4f774e7dd57d8597da648c6d", - ".claude/commands/speckit.specify.md": "9aeaa502dfdbb50ce9066b3d272b90071458167a8c1c434c804e8ce70b35748e", - ".claude/commands/speckit.tasks.md": "7b8611461e94a3c0eba80a8fa92938cb08fd78f45eaae9979cf51d57bbf70664", - ".claude/commands/speckit.update.md": "e5b9a904059424d7e72a5cdb25c00ad94b5bb7caedce3bd2c47593310cf31d40", - ".claude/settings.local.json": "6e3c8aa31f05f1876f95d085e018a1b8ebe0dd914f62caea0e74145b448a1726", - ".claude/skills/documentation-manager/assets/example_asset.txt": "34ddcc92e035e573bbe2826fa8bb0932811d47f48fc9bda237b52e220603ed10", - ".claude/skills/documentation-manager/references/api_reference.md": "23b3a73b37eb40c8f29a63f15031dfdeb4718e0b61c6d2510af703a8be8b7509", - ".claude/skills/documentation-manager/references/quality-criteria.md": "fef17a7cfbca804c5f30804228eb5e7993184c7dd17a975f1834bbad6e278087", - ".claude/skills/documentation-manager/scripts/example.py": "7e0862e73760c523381959536bcff95020328f26181cd6a605bee2456bd8f643", - ".claude/skills/documentation-manager/SKILL.md": "9a16dc9c3c19fcce57a97cf3cd2bbb99b268ab4fe5349182386dd69460513458", - ".claude/skills/mcp-builder/LICENSE.txt": "58d1e17ffe5109a7ae296caafcadfdbe6a7d176f0bc4ab01e12a689b0499d8bd", - ".claude/skills/mcp-builder/reference/evaluation.md": "8c99479f8a2d22a636c38e274537aac3610879e26f34e0709825077c4576f427", - ".claude/skills/mcp-builder/reference/mcp_best_practices.md": "3bdf013379bdd3c198baccd0f183441c710fc7cae07ba4c6f8f8048276519688", - ".claude/skills/mcp-builder/reference/node_mcp_server.md": "40b03e9c07463d5db524c1f5140ef60713fdd911c2f4386f89e0b94d43b8764e", - ".claude/skills/mcp-builder/reference/python_mcp_server.md": "4e6db48188f44ff4eb707f50b8d273d5d18af4b88d326f7a26f03a405064bc0b", - ".claude/skills/mcp-builder/scripts/connections.py": "9403668a2041568772082a8b334122c1f88daf0541fb393af4522d0094a47a6e", - ".claude/skills/mcp-builder/scripts/evaluation.py": "49ed1d17cdce5da101b210197740713f49b935c29d4f339542a14b132658e6f7", - ".claude/skills/mcp-builder/scripts/example_evaluation.xml": "9272b348ddcc4b06ba562367ccd0770e018158c0068ac5116d5e34aaeff8777a", - ".claude/skills/mcp-builder/scripts/requirements.txt": "d5d7558b2368ecea9dfeed7d1fbc71ee9e0750bebd1282faa527d528a344c3c7", - ".claude/skills/mcp-builder/SKILL.md": "b1010e90adcb8fd6bf57640df34ab6454fbf7e4216e150a4620f7caccadc4e63", - ".claude/skills/skill-creator/LICENSE.txt": "58d1e17ffe5109a7ae296caafcadfdbe6a7d176f0bc4ab01e12a689b0499d8bd", - ".claude/skills/skill-creator/scripts/init_skill.py": "62bab945e4a857aa953bcc5f480106a5a903504285b0596d08af5da9c352a4b3", - ".claude/skills/skill-creator/scripts/package_skill.py": "692525dd8096aee51730ab142fb2605894a6f1a4135bcffebbf4f8ed3cf8715e", - ".claude/skills/skill-creator/scripts/quick_validate.py": "41647b79d15e7e51b944d56843e9f87a33f4c66e64ded5964d1f95bad2fe634a", - ".claude/skills/skill-creator/SKILL.md": "8c0ce23bb87be91f5b0853c2e9815617c3858b63acdddfe5da47d2c2d3a60816", - ".claude/skills/speckit/assets/agent-file-template.md": "55ed438c2e861444ef22f45fe5238f3ebf0dc1cb6e53067d7232fbbf4ce82892", - ".claude/skills/speckit/assets/checklist-template.md": "0c8974d9d36136935d257354a874aff69fcb4931a2c5ae586a31f8bff59ecd54", - ".claude/skills/speckit/assets/design-improvements-template.md": "7ec00cf955f3d0733e81c22a53e1ec132849f275c614f600a516abdd4273cf56", - ".claude/skills/speckit/assets/plan-template.md": "d7e9a5513670d886f6ec9e2d9ae48343ebc4fb4567459f438fea6b7e734ab7cb", - ".claude/skills/speckit/assets/spec-template.md": "bd529dda1cccaaee34fce4355100c5bfcf56d3811698c6aa7dbab5f6b5476c60", - ".claude/skills/speckit/assets/tasks-template.md": "860e9ed647b20c45329b7548041efd10c42d7233eb6da22a92c0a886e0ef15a6", - ".claude/skills/speckit/memory/constitution.md": "fff35c4009a8fc212bbb288e32b8c22d0607330af40aaeb0b6816711fb48ac67", - ".claude/skills/speckit/references/speckit.analyze.md": "d2393b2634b6bd02d324bed4a7b14c69fd62c18132d28ea282095b51a7ce36d7", - ".claude/skills/speckit/references/speckit.archive.md": "c49d8b94e2e668efd33f47df6ed57c309a6a4f4ff0b6f90e0d669289948bd0d3", - ".claude/skills/speckit/references/speckit.checklist.md": "fa209c97d18cf8e08993f7010b545c83bc86fb105800ca8ac17d9a76b7a72a30", - ".claude/skills/speckit/references/speckit.clarify.md": "124c01ccf65cbc1500cccac15e9c784f8dd0da0b3ff7cac7ddaad25f2254fdaa", - ".claude/skills/speckit/references/speckit.constitution.md": "dd3da04f8001fd64065e59102b05ca53419c988e727bb50b8b4d14085bc6f700", - ".claude/skills/speckit/references/speckit.di.md": "c375b9e8c9c22ddbefc306ba53e3b25266579d193624540e640979e09d519fc7", - ".claude/skills/speckit/references/speckit.implement.md": "d884ff8eee2269428a8d8a625ed9079c411f3a223f9050b36db6dcdf29887dc2", - ".claude/skills/speckit/references/speckit.plan.md": "c509780884509d571659c444057fd9028c27d1c6754a64620026e8b1b8ac9844", - ".claude/skills/speckit/references/speckit.specify.md": "ed39cc6fea65fd6df5969142349b033e98c110203e680161eb499cbd789f3180", - ".claude/skills/speckit/references/speckit.tasks.md": "b729b88e0cd7917417bcae185276d58825345cca8ed15513d37bae327601facf", - ".claude/skills/speckit/references/speckit.update.md": "e724ad74269ae7feebe9334746d337bdf58512ef74d97ee844c3e6698375b0a9", - ".claude/skills/speckit/scripts/archive-specs.sh": "ac65326fafced095713144f9bead600d2758e1249f6d107762e69dc6faa6eef0", - ".claude/skills/speckit/scripts/check-prerequisites.sh": "5101cde0a41d0138e3fb976d352f1225d905d79200ac5e270fb1ad84c92e5914", - ".claude/skills/speckit/scripts/common.sh": "ca7cf6b56f09e27e9b33f306c7fa33bc955ebf3515c2d3a8b887b94bc3cce4b9", - ".claude/skills/speckit/scripts/create-new-feature.sh": "4c2dd1cfb54cc5dda7d641a08f7bcb4d573edbdcc4ccc14c983c4984e13de481", - ".claude/skills/speckit/scripts/setup-plan.sh": "0a96c6ae676f47c4d4d52f4549b825a17a5a90d9557e3f6aed417d201a2454df", - ".claude/skills/speckit/scripts/update-agent-context.sh": "5a80e47df9a5a2f4cdeca6c9e5d7fe73c03c87dd7387899672c229adc72bbdcc", - ".claude/skills/speckit/SKILL.md": "89088c78ed5c47cf7b79efaaf089dd2510376020f7aca6ec4e9df2927cbfb360", - ".doc-manager.yml": "3d30c5d7c8498933ee72d33945a366cce24cc0d8b33609bd7b4181dc4cebe59b", - ".github/dependabot.yml": "578b858b08141f08e00a144c35b208f32075d2f40305111a5d970e8d6ac9ef65", - ".github/workflows/ci.yml": "081a8464d550c347fa4af32c4666490d744aad2d9d945f36019c353a26f87a56", - ".github/workflows/docs-validation.yml": "259dff44c43e69dfa78cc3624bdfc956d5f1b895b2798e45e1677d1be86ba2f7", - ".github/workflows/pages.yml": "26a69d51de2e00b38fece64609190cbd9024732789542dd71e730acc783b9962", - ".github/workflows/pr-validation.yml": "7550573b5946b83748efd0294c7e2f076979a14f4a9a4b3adfa474bd5ba14d8f", - ".github/workflows/release.yml": "89d248b668e4d1c151b7c0b3cb04e8e311fb9f75fe4b066028749f71b9ec0cbb", - ".github/workflows/security-scan.yml": "be292d32d6f223052450ddf86a0a935002f8e41e29a5d46f5f05da39fb6ffea0", - ".gitignore": "dfa96d75bf0c48313b8567ae2313fef553925bd38ba9d73f47dd926c7aa5326d", - ".goreleaser.yml": "180c963b45edfebc6e6a1218e00e33953ec850270f4703595956ec9a2d324997", - ".markdownlint.json": "9b4b2ad4dd10efd42a4af14c5e6f0675b22ccc3eedd378d9075162cd692549ae", - ".mcp.json": "13aaeeca4053a1b4706848549455ff7ee847748b409c3ffa3487de2b0ee22079", - ".serena/.gitignore": "56326d749401841d23e69493167468b16e53a4b55837da1d5352a8c697c7599b", - ".serena/cache/go/document_symbols_cache_v23-06-25.pkl": "18390cb59f228ed8d6f7e295f9700fe828bb94b3ebd20a25069f3eabbbe59519", - ".serena/memories/automatic-usage-tracking-design.md": "84fc68110ff78b95aebd9f0be39bfbce0c28a6df1a4f3e1a18686dbb6d96877a", - ".serena/memories/code_structure_and_conventions.md": "56c079aa07067f44b71f83b862a15e9393b3b592bab7067563b99b28951ee762", - ".serena/memories/development_guidelines.md": "36272713d1e06188ca3373865cf61348678e7f9d10054bb18d6918e5de34c3bc", - ".serena/memories/lipgloss-place-whitespace-background.md": "be840784644054601f19fb3ea139f76b9fd5d6489f6c5b017cf6f6d1da257827", - ".serena/memories/project-strategy-action-plan.md": "167a93a825e17dc1f6a95ecc1aaa05ea636af1062ef75efb45af237d4efcdf86", - ".serena/memories/project-strategy-and-action-plan.md": "a54b79de5adf77bf51e04de900f761d4870821eeaeeef8167e7aeb9f54d2df15", - ".serena/memories/project_overview.md": "a8e619c54a63b9c4eb75418eb85a142304b6e495432382dc02ab3b3992ba0749", - ".serena/memories/script-friendly-output-design.md": "362accd68746a69aeed05aef5c7996c532a81e63f352fb62b25ec6471e8ce2b2", - ".serena/memories/suggested_commands.md": "cf7c09bab039099b16cd591e10d7f146e4b0948690f1f236e976bead8a6b5866", - ".serena/memories/task_completion_checklist.md": "abf09a803bdcc37c6f5f122fa1297ff01f82800a38dc88bad593fc409c476f2e", - ".serena/memories/tech_stack.md": "abb0d95b75f5186ca9910fab8f5d6498883f6a6a84df269a66ae15fd4e6ea624", - ".serena/memories/tview-fresh-requirements-research.md": "c2e5b14b091dd392d6a0234a71d83d58a43caedaf186765bde1275756d74c61d", - ".serena/project.yml": "b854d17b833e9ce80f7bddc4d7b7eaf79ff1af396ca719b5a0b2770071a10278", - ".specify/memory/constitution.md": "fff35c4009a8fc212bbb288e32b8c22d0607330af40aaeb0b6816711fb48ac67", - ".specify/scripts/bash/archive-specs.sh": "ac65326fafced095713144f9bead600d2758e1249f6d107762e69dc6faa6eef0", - ".specify/scripts/bash/check-prerequisites.sh": "5101cde0a41d0138e3fb976d352f1225d905d79200ac5e270fb1ad84c92e5914", - ".specify/scripts/bash/common.sh": "ca7cf6b56f09e27e9b33f306c7fa33bc955ebf3515c2d3a8b887b94bc3cce4b9", - ".specify/scripts/bash/create-new-feature.sh": "4c2dd1cfb54cc5dda7d641a08f7bcb4d573edbdcc4ccc14c983c4984e13de481", - ".specify/scripts/bash/setup-plan.sh": "0a96c6ae676f47c4d4d52f4549b825a17a5a90d9557e3f6aed417d201a2454df", - ".specify/scripts/bash/update-agent-context.sh": "5a80e47df9a5a2f4cdeca6c9e5d7fe73c03c87dd7387899672c229adc72bbdcc", - ".specify/scripts/powershell/archive-specs.ps1": "36fda32fbc128f203402349fcf280f488da4b1f2cbab3aad89b5d4a0bfedb4ec", - ".specify/scripts/powershell/check-prerequisites.ps1": "a525badbfc70066867acbe85cc9c1c724c079804a3835e1b9e0bd2fc45d04a11", - ".specify/scripts/powershell/common.ps1": "74df56db60c189ad9a2b2f70c85e52717c6f4040fc4b7a91fd76d176b2884b69", - ".specify/scripts/powershell/create-new-feature.ps1": "30cbce7b16dfb3f57df1ccecd259e943f3a06bc428beba692a4483f9c84e0464", - ".specify/scripts/powershell/setup-plan.ps1": "2b6889f98b6843b768106d80598162abc360964c6405c947656f236d5f410a48", - ".specify/scripts/powershell/update-agent-context.ps1": "e61ea8eff0ed12bf93c0c3acfedbe21af89fbff7c4258edf832328e06068c0f3", - ".specify/templates/agent-file-template.md": "7ce716a6041623208d10628900ee35d31eabd9f4177bcd525c28549d8ff3ccdd", - ".specify/templates/checklist-template.md": "78d0ff5f1330578b274ae2b0bd53b7ed86d7c3de66dbbba1184ac0cabcc3dbb4", - ".specify/templates/plan-template.md": "c5152cff12712255f9e7098b3c419fc95ebffa4cb8cf19635e1428baeded0653", - ".specify/templates/spec-template.md": "bdb3cb6d7562f9429c00373d221f3d8a377d2ab4132afdaed36d39d83e6f2f63", - ".specify/templates/tasks-template.md": "ad6eaae8f6a0569d28f60a9c1c0657f1e088b76a2859b46b18f2cef4588d682d", - "CHANGELOG.md": "d72447f51be5bf54e38a8802bf7db155b85c877555e7e74f07e117b99b91c638", - "CLAUDE.md": "2bcc51fedb86dc1c1b0b303dffade31cb68e8727403a94060d7631b5cb656116", - "cmd/add.go": "5bb7d5bbee88304fa8cdfe3c268baedd8805610030aa98740575fdb11983f11e", - "cmd/change_password.go": "8355659b5a9bf4693d81092b03ad7d936c6043207b97c4dcea02e7cbf0386e2f", - "cmd/config.go": "ea9810cf6f4dbcc93ffc53bfb34ce2dcb4d93a90e48b230ade4036c728cd1fad", - "cmd/delete.go": "135188b75f1360eefcc9473fe25fa252a2abff31a3a0247bed900763c589b480", - "cmd/doctor.go": "966dd049ce155ede7a8a9cd740fb9253bb1e05508a0d6417cd44a81845deb080", - "cmd/generate.go": "2e805f671aa139319aab02e4da538ad2dd87c2b91f0326dc31f5c8129953024b", - "cmd/get.go": "73613e26a3f32cd9c47eca02061dced441b5c462770d6e7a940d3a1d5986d321", - "cmd/helpers.go": "da94ca7963f179f16bc0bb0f9ea108868cde8973b6f77635b4bae8742a35ad79", - "cmd/init.go": "a17dbd98398e225d3071d1ee77c408c0fdce55899210a73553cead8d76729f05", - "cmd/keychain.go": "039c26a58d7d04c71ecdb7f257bc20e61b137697ce453026b8fe6fef411c43bb", - "cmd/keychain_enable.go": "4fe42263bf198f27aeb672d5b5e4ab7e61d0ab27182319dfb0597e46d0d1e83b", - "cmd/keychain_status.go": "d407c0e680323c5003dcddbd25f1ea4baa26497ff8281aa69b64dd1ab3ebd83b", - "cmd/list.go": "89da75775a8915a2150f4c6663dc12ae0677e01d116301cfcadfef7390cabade", - "cmd/root.go": "0098285b3013b3ac2978f8eed91a799d1af689693dc397479ba1e194db25a253", - "cmd/root_test.go": "0bd1ff55fb91c2fdbbe40bf9bcc384176dfa2d30b7a672c9ed91234817bca143", - "cmd/tui/app.go": "43eeb51b0b40a715b8476c0e97e4bc822d70791f5c857bff8c5d7354c058c457", - "cmd/tui/components/detail.go": "db5d898aba779de1ad007aa44ede9c1e0715e873ab6e384b4c042420141d2075", - "cmd/tui/components/detail_test.go": "6e75300a194cd7a3cfc73f7a435fd198fb41b11936388c0bef87b25135f83ab6", - "cmd/tui/components/forms.go": "f360218d34b6c9951a6ab3de2529089bb8cceb039e7559a0d0cc7d7877e04261", - "cmd/tui/components/forms_password_toggle_test.go": "008104b1480a798a3bc737d33f4209a1a542f759238338a2599f02286ca36959", - "cmd/tui/components/sidebar.go": "f7991b7eddaa2b9e3c75ae80f61cde53f1518bafa9621397ec7924872f79893e", - "cmd/tui/components/sidebar_test.go": "f2426673ff64f2a8ece67f91fffec9107120f101e9337f6397515e933e4276c3", - "cmd/tui/components/statusbar.go": "1921a2c7b0b34122e4caf4514839c47dcc6438d6d863b07580db17cef900bfaf", - "cmd/tui/components/table.go": "285ef9846cf032efdb8b4b1c1d4199d0d3af0864a8d02c5a5fcfa484becdbf9e", - "cmd/tui/components/table_test.go": "1abc2811e89584d919539de80aaa8a7d57aeef200dac899634d3f3eebcfefc43", - "cmd/tui/events/focus.go": "e2d6c4f035e4981646a9bc28a2b5fa097dc6b18d981ff860a40429033f6f7f79", - "cmd/tui/events/handlers.go": "9e7ef5f9b8ffb2ed0ee33bfc728d88b92b2685208d08c8892e4d15162aae5863", - "cmd/tui/layout/manager.go": "0e31721268f04f7e06854fba0e9b42c4ee8e727860f21173b2212da53bd7931c", - "cmd/tui/layout/manager_test.go": "2624de8f452c27f959feb5bdf956e5f21de7f694960beacf9d2e71fc8e968950", - "cmd/tui/layout/pages.go": "21ee8b0987cd7dab996118281d47bc280b2a5e204ef523d1944fb368a9f8511a", - "cmd/tui/layout/pages_test.go": "a3fa6742e3cfd48d0303f2c344d0f2ae46a217e01f6c7ac864f512165ab30027", - "cmd/tui/main.go": "ee842e04c166c95c71427f31fb379d5c95a41feaee12f82bee1e1cf9b5a38c3a", - "cmd/tui/models/navigation.go": "88e5a7903d63eea25200be42ee3e1967c46eb18e9519d4bff1751d58ab9be1b6", - "cmd/tui/models/search.go": "baf4867219d8f1a6d2851a25240ef00de14a961ece1ef91693f0afe9204a3b99", - "cmd/tui/models/search_test.go": "0b54b765cf2728c75c2c379ca2a22b07da21d6d810597b1c6e4aa62bb5e7e4ad", - "cmd/tui/models/state.go": "2dcff4b9218d00025b0ee7b3e2f876dd21b14ce34eef6f9ba77d4012e1e2ec59", - "cmd/tui/models/state_test.go": "c394174a27ba5fc1649715cbfc5f0ca2d5b0ad64813298764b0e8da247c5c64c", - "cmd/tui/styles/theme.go": "5713de3928333c8161eabebd093f61cd8d1a92c504c10913f2fbdae07444e398", - "cmd/tui.go": "2c598900b4cc5be38f699ea21d13f18f1f296b181cce127f3dbd8eb5f9a1229d", - "cmd/update.go": "044717de710142b86d3d8d53c77a88d1723ff87520c2efda8876f4d1fb0fc604", - "cmd/usage.go": "8c8b38a6706e5d6b85f468170ffeaea4e17433164d0e30cae33402af906cac3f", - "cmd/vault.go": "a5774e7025de9475854a364e0593f31fdad41d29eff8e36396d1b9d6d3a415dd", - "cmd/vault_backup.go": "588881f8dad1c7a1c71cb91907ccc70cad951f417c001f46d4fc9c49e16b22e9", - "cmd/vault_backup_create.go": "4999983a3efd5f74ce89c576935a5ce5ddfac76f0aa25e2bf8ee73446bdf123c", - "cmd/vault_backup_info.go": "a808402b4766bd95bdc84d5c08b0700f19d1faa8b1ce006ddd1758fad40efaf4", - "cmd/vault_backup_restore.go": "df31f93339b74155363f0faa119c2e6ed1baeda50641d5f28c0a73944ccd454e", - "cmd/vault_remove.go": "9cb61bb2b409acfc266a51e28cd1002d7f52338a4798ddff83da1987025ea612", - "cmd/verify_audit.go": "013727a6064c86cb0e7136fbc4ac976a7738d3bd200ae9d6533152206fb675a2", - "cmd/version.go": "ccbe76818fdf4173438824a2976bf3a82f912767f752915453dd9a38d5eaa10d", - "CONTRIBUTING.md": "1e4e9c95ebddb6b6fc7ef3fc9bbf1f634c9908230d6663101132d5a83d430c5b", - "coverage.out": "73b3001a5556ddd92fbd0eefe4d149cf1c3a6ffe3679c31a966d6a7802940fe6", - "docs/01-getting-started/manual-install.md": "029c0ed2e3397cd6c89bea4147f5a58aec1171ef42fd7f33aae14c42035bfa8e", - "docs/01-getting-started/quick-install.md": "7d0717a7655587bde7cc0c4ceea3d8059c1f77971929b3021bd8a4e2266467fb", - "docs/01-getting-started/quick-start.md": "92fda3d3d6b3284cb0ab9bb4a701b6e69d1cc395d9aa164b41c74a80124ecda2", - "docs/01-getting-started/uninstall.md": "20d9203eb54f9ebb8a607c5c1042b720e444932db149d185cbb6a45e2761b018", - "docs/01-getting-started/_index.md": "de2189bcd0f4b3c680e61e62e5adc8ea52036c02ad6ad098ca0b21057ee615ea", - "docs/02-guides/backup-restore.md": "eb3d5141b1fd5994536eda99885a9913a972826c379546d953d7b659992b48b8", - "docs/02-guides/basic-workflows.md": "ba6679e239bd4d7b370d020e2af46e8f0a5248075f314d13dd20d67fc059ae00", - "docs/02-guides/keychain-setup.md": "b35e82c4588b3a9a4fd42506f73469936761a76c5a16a6cd18d2bbd5fc4bbce7", - "docs/02-guides/recovery-phrase.md": "8b44a2e6556b800be946c5ccefb5346d64de666e06d6718c18e64f4e0895217f", - "docs/02-guides/scripting-guide.md": "30aa8bac58d3c786fb0c87d487b4304011d54a57ee7703a5f18320c7abbfe85b", - "docs/02-guides/tui-guide.md": "6502966297a2482502f468c88c6cd29f549f933b501dbd2fadce23fd9795f84c", - "docs/02-guides/usage-tracking.md": "7d6df897309defc8e135b1184666b47e89f319645667ecd61f50303ab22fff4d", - "docs/02-guides/_index.md": "91f59d05c14b3966962a912db4b1ed192f41c844bc8144fddd5f4d4dda71ba95", - "docs/03-reference/command-reference.md": "13842f608cd40e5ca1beaec1f03c159153bbf8db83fe3b34ef0e8385c4b20b81", - "docs/03-reference/configuration.md": "2ed273e7b379c5eeeebd362347232bc05ad34a584ba277770b66b39bc48c9106", - "docs/03-reference/known-limitations.md": "f19cb3444df9025139c5396516c5080a07013f3f379bd88311714139c5710a78", - "docs/03-reference/migration.md": "7fa057aa73774be8b41a6be76602a3c074605672f7ea941336330185c342fb73", - "docs/03-reference/security-architecture.md": "9faeac32bf1aa6e0ab31d91a099dcfe6162024d048f107b4c1f6d174a0503923", - "docs/03-reference/_index.md": "af538064b2348f5845ce4f3d57d963fc203af87f77d74b06fd97b11de3f19481", - "docs/04-troubleshooting/faq.md": "ca04fcdc2d0e69aff9504ca9eb583094968fad331ebfaac949c00633dd2950e4", - "docs/04-troubleshooting/installation.md": "4071de21719f8335d90e5d444ab3b713e0ebd1b33ec3761f404f60b7a1188a28", - "docs/04-troubleshooting/keychain.md": "c0d1ee5745b4c2e6014c0f38d5974f48dcb2e24e162f93c7fd693eec160676b5", - "docs/04-troubleshooting/tui.md": "91563b6c2271a3cd7013fbd4fa249843c5f87169bbf8e485462ed682ec4407e1", - "docs/04-troubleshooting/vault.md": "1f6a65a150286980c98390880d93e263ac66ca9593fba573b05c13923e7d1006", - "docs/04-troubleshooting/_index.md": "5f58989a3226e1997eb03da1259ba011f19b36f71101d8904c2df75d9f492172", - "docs/05-operations/health-checks.md": "53fdd696e0a4e48b23cd892a356725329c29fd670271f96bf54521145821cf5e", - "docs/05-operations/security-operations.md": "5135a9d5915ad3ef7d8cdcff993e064bba5faad30c36b6bdf528ff73ac0523a0", - "docs/05-operations/_index.md": "6c1ecf8cbcc6af3e81e9508a780ad47900147bb82072c9acc7104a6bd8183af7", - "docs/06-development/branch-workflow.md": "fcb59533376d2b984219a21979826aca76f5686f0b389558e3664ac5b0ad6c28", - "docs/06-development/ci-cd.md": "3c4b459e6331f9a08df2294903bdb6e95bcebd705e4ff0232e2d1d004b5feff6", - "docs/06-development/contributing.md": "260b766190a278eec291e19d263de5143b404e367496fb30cd9d4ea43a958701", - "docs/06-development/documentation-lifecycle.md": "f5a1f33000052e05f8025ab322d8e4f626b23b3952c4700e57c6b05f7b7556a9", - "docs/06-development/homebrew.md": "5e928d169452297376f85146cd3299793ba3b22d9cc442a2107c839bf2b5b238", - "docs/06-development/release.md": "dc57929a4ca73934676d2d0ad1ff71c926596ab84d1314d6a0d64aec5047e4b1", - "docs/06-development/scoop.md": "4fa78cd7f6b551f93f4e8dd950624b7813e16d1cab46c9039baa5783076b97ea", - "docs/06-development/_index.md": "55060da9de334553fca48d40e7142169cfa2c3fee1e8bf5451b2b19eca3df2bd", - "docs/README.md": "66dc79a3be64458397c445b9451445fabf73a5ae3a28d009a196bade1a8619a5", - "docs/_index.md": "49ca55e3139a7db6022a9d3f04c93430941461ecffe62ab32c5a41b495a3a3e4", - "docsite/.hugo_build.lock": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/go.mod": "3a00b8ca7f8c1f0dbc8059d602ad62f6270f83b632d9ce6146b39ae0f82cafc7", - "docsite/go.sum": "f77fa4d8c436f59bf47fced4c59314ec7404d8c214e4f08c30762d2654b7d258", - "docsite/hugo.yaml": "ab82f93b5e6804fdcefa4d9700d03cef5eb9fe8fb54769556f9fe92e11e4caca", - "docsite/themes/book/.github/workflows/deploy.yml": "cfa4fcd37dbc7df4c4c0d65e513874eabc64e0d1809746d7e7a23be6d338abd1", - "docsite/themes/book/.github/workflows/main.yml": "f847e8de552fdcbc5980f818e9eedde244535c2fd78d41de26ebca3b5b037afd", - "docsite/themes/book/.gitignore": "48eed25676bcfe953a601341212eb996723c0753e2a03835c9553b986180290f", - "docsite/themes/book/archetypes/docs.md": "a65a2f7cae92feb2daa0b252acaffd3084762a76b31fbd4838c89d59a9f40968", - "docsite/themes/book/archetypes/posts.md": "fe2c2def8d177772ab70c114ae9adfbd7db86e7362c34e4749a071178509db93", - "docsite/themes/book/assets/book.scss": "76c26d850ee93321f0ddd60480514d79709289138109cb3aa2a5e918c9e6fab0", - "docsite/themes/book/assets/clipboard.js": "0598a70cdb89cb37c9530f4c197ea94ed91b4db471153067d249863cf38d78ba", - "docsite/themes/book/assets/icons/backward.svg": "5a473b4231439e6a36d0981ff96141aaf9e6f0564543d4392aad149cb5d73e89", - "docsite/themes/book/assets/icons/calendar.svg": "8384cb803773b19b7fbe54b615fb65e1ccc686c2c350eb0b209dcafc97849444", - "docsite/themes/book/assets/icons/chevron-right.svg": "22798576ff2dcf0fb8a8a668122531b618d80941fe6a2be92b952dc289a01e27", - "docsite/themes/book/assets/icons/edit.svg": "69d2cd4b25549da2a4846e89b1d6173b0bbdc7f1dd170edb422f5741fdfd896c", - "docsite/themes/book/assets/icons/forward.svg": "6866634762f559a251a05e0b4656fcaa8f86a7f272bc092ce9e28b399e0e4018", - "docsite/themes/book/assets/icons/menu.svg": "d43f4adc5eeda40277dc21281b737709a55200f147760c538ec74ecabcc5f772", - "docsite/themes/book/assets/icons/toc.svg": "001e053bfb2982b33fd7930f84bffd82771cd461a61c2cabf927271488af48bf", - "docsite/themes/book/assets/icons/translate.svg": "a594c54e0797d14249d0f6e8a4cb385d441918f1628413a30e5b38934819aec5", - "docsite/themes/book/assets/katex.json": "adc407ed122949a003e507dc0e15fcd26802af9ceb330264ef4bf0ff698c3078", - "docsite/themes/book/assets/manifest.json": "454a572c0c3cde7bd954fe72e4a80011a5a0697aa7125cf740b58400ce3dfe3f", - "docsite/themes/book/assets/menu-reset.js": "641d27735a54d73a0ecf5c2fc18f43302838eea7f1523bd0ba7210d7f8b95575", - "docsite/themes/book/assets/mermaid.json": "5285f9e4376505401d6839479b9c0ddf271050a1e2587d5b54ced431d589bdcc", - "docsite/themes/book/assets/normalize.css": "b9ebc7b15fb70993a90fb61530c0744dc14c6099d7343cd794cab3fd5f11ca40", - "docsite/themes/book/assets/plugins/_numbered.scss": "7fd52f26fa5476bec6b33a6459f0ecc02e2ad4647ba0bc23ecf27fa2b3d0b60e", - "docsite/themes/book/assets/plugins/_scrollbars.scss": "e185f32112d447c389eb5a9f243f2aedc20c462a4044bdb7341809e720746189", - "docsite/themes/book/assets/search-data.json": "e15f357776db5d9f6c3a444116e9c05917fda05cf8c5a481434a06fb33b0df6b", - "docsite/themes/book/assets/search.js": "268f431b4dbb0c39957d00c35935cfec888d96bbb121ecf4eba70ac4ab02fb8f", - "docsite/themes/book/assets/sw-register.js": "3774e8df07c7cd59fb061f503a1982345b33f0724270a99eb996e0f184bbb4ef", - "docsite/themes/book/assets/sw.js": "a28d4ccd640f6745c865e83ffa1eed1e2b7fec2278bb708657051b6f86066667", - "docsite/themes/book/assets/_custom.scss": "c25b66ef58149469bd5095f3bfdbaf7a736f3514a89050d6ae80a68beccba0b9", - "docsite/themes/book/assets/_defaults.scss": "544a9892b3701eaf01aac0ffb2cec83ac23c6324029cea6c7bf67b37c5ab2260", - "docsite/themes/book/assets/_fonts.scss": "ad2cfe957503656c4e25a99cb14407fdc32779997affee10f28505dda9edbe8b", - "docsite/themes/book/assets/_main.scss": "f1ece01c95380b2244f40c7f94748c8d11b3a8ad4eae0424edda9567dc16755c", - "docsite/themes/book/assets/_markdown.scss": "37ae2aed2529c50464116e5027fdad3c77625f7c2fa7f9f9bed96b346f973194", - "docsite/themes/book/assets/_print.scss": "f97ead54451df2e97c094ec5056d3cb041d34ce9ea9e20ddf963b2152090b358", - "docsite/themes/book/assets/_shortcodes.scss": "053312c9462d0e203dbf75b915c9e48f1f66d79b877f70158127c597973654cf", - "docsite/themes/book/assets/_utils.scss": "6c81cce59d03ceff9db160731877416dbf9861358b78335be504cc2be7de56fa", - "docsite/themes/book/assets/_variables.scss": "082ce753ba257bdc4d87841c19126d7c24ae2bfcf4221c03b9d5c2708059f4c0", - "docsite/themes/book/exampleSite/assets/asciinema-627097.cast": "52d2135f8a48628ea8407ce1c8257f6ebf83fa910e449738a4ee094a25a10c88", - "docsite/themes/book/exampleSite/assets/book-starter.cast": "72f957d4e6edfa4bb274dac6a0341fe9536bb6a8313d48d02918f3cd94001708", - "docsite/themes/book/exampleSite/assets/placeholder.svg": "4bee845857320fd06248dd2fe06e5fffcb1d52f0093f939c0c378ef27a1c0f9c", - "docsite/themes/book/exampleSite/assets/thumbnail.svg": "4bee845857320fd06248dd2fe06e5fffcb1d52f0093f939c0c378ef27a1c0f9c", - "docsite/themes/book/exampleSite/assets/_custom.scss": "0f6232a69bdd3d7901fd791df8a0ac21ec6be2a3cd286fc95297b6e925cb2a68", - "docsite/themes/book/exampleSite/assets/_variables.scss": "794b46bf585ab8631218855a9f4889e2c7395052a820564d1d4b6ce6d30507e7", - "docsite/themes/book/exampleSite/content.en/docs/example/collapsed/3rd-level/4th-level.md": "fc14c8ccbda345638adaca21ad9fd2d7991ff1234eab176312f44a3f0989ffe9", - "docsite/themes/book/exampleSite/content.en/docs/example/collapsed/3rd-level/_index.md": "dd512a14f48f76edb4d7344a6c1aa75cca8747b3cb8dd09e55ba14528768ee6d", - "docsite/themes/book/exampleSite/content.en/docs/example/collapsed/_index.md": "e25e8ec3260e8b4f0639266641adbdb0f91f8beb0027a6fa2c55ae307b03ea7b", - "docsite/themes/book/exampleSite/content.en/docs/example/hidden.md": "d50d384d71633700074605bc650b9b7228c2517c79876898e5058bf2809ce7ad", - "docsite/themes/book/exampleSite/content.en/docs/example/table-of-contents/with-toc.md": "3a5a4fd9739d18ac52b3e0232cbf960fb29097018338c9366f682893222bbcb1", - "docsite/themes/book/exampleSite/content.en/docs/example/table-of-contents/without-toc.md": "269a6f8c6b2f7ad0cec571e3b1935f6d3b57e634aa1c4886c9482f51096b22ab", - "docsite/themes/book/exampleSite/content.en/docs/example/table-of-contents/_index.md": "b54f9fc133c25abd8f95bac6adfe7491d3adb9bed180725686681e963459fd5f", - "docsite/themes/book/exampleSite/content.en/docs/example/_index.md": "8e27a4c3b74f73f33b37318e9ce913cd7b1c518f055b7c6fdaaa2922d5ae0ca8", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/buttons.md": "d510afc0022ed9ff1c6918ab762d560c449a3b66a9df6d5c0dacd85cea203f62", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/columns.md": "149b88e672c7628b07ead012dd29336eb99922fd84bc679b401b20e72e89dc09", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/details.md": "2f6cccf0000d5597347fa0c2f0c67f0e88535fcc652263234c2d485edd76c4e6", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/asciinema.md": "7fc0034577014af84cbeeaa882dfd8379750fdd4c21cb189306487a638c4c855", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/badges.md": "9438de72724f7383d02bf34ca44372fed49be914adc06312137c3bcb43445377", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/cards.md": "2677fe82c620f345c97e341d922010be7197271bb69ec4205a5f0e0c7c489b67", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/images.md": "ed472a8d9f21f61b13297b3dd6c2f2520ddedfb6456f51ee2f2489c6f728c7f8", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/experimental/_index.md": "165e223b67516321d105f2d195c8819c6a43f528cadd8e2a2bbfabde1a1b6cbd", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/hints.md": "cd0f7ee9c55875ccceccf19fe158364a26f1997e446ee6f0751eb019fb793093", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/katex.md": "5a11533da0135ef6238d693a66207abec0a09c47f0d1976e6589e7bf3cea50aa", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/mermaid.md": "c67848f63fede56377f6710d55e7bd00e607ebee5a1ba3fc74454fa9822ff194", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/section/first-page.md": "cf17f56b40c55632db6eebe29166632b2c249f22ab7c5b8b364216ee705a5c82", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/section/second-page.md": "8fa957f7ca87290bb9d2da1bd3f31920affda161cb6c662ef371ee8090608716", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/section/_index.md": "15f92f196c1a3b36c4e7283342e1a016d57d1b4aa0a6e8cd1637487df1d12fd7", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/steps.md": "07eb9697c3662c76ef77713b8416c53a116eb52a8e43229ddcc9df4ea664bd14", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/tabs.md": "c942f21ecfbed320976d017ea751a319accd7b8ddb32fa2fdbf280ef574cbd1d", - "docsite/themes/book/exampleSite/content.en/docs/shortcodes/_index.md": "970ab5b528d432e02f978aa6fc8de9bc5da79dc78b389939a13a544cc4d7c927", - "docsite/themes/book/exampleSite/content.en/posts/creating-a-new-theme.md": "9141a10242b42c06cc99bd7a049f71d70244c176f54bdd9af41da4c1fedbd26b", - "docsite/themes/book/exampleSite/content.en/posts/goisforlovers.md": "9bb1d418d643b9f40cc3b54112189b5278e54fc815abe1216dfa66b8968db6a0", - "docsite/themes/book/exampleSite/content.en/posts/hugoisforlovers.md": "58e7c15fe4b3a5adb91568a8de11edf808593c8875c9f85bfce8bd7b46aec339", - "docsite/themes/book/exampleSite/content.en/posts/migrate-from-jekyll.md": "13b9eda587da2dcd24ef1b4c2a99bbbebaa7226d76818baa92db47dcd808676b", - "docsite/themes/book/exampleSite/content.en/posts/_index.md": "236b3f804e315bb8878717dd814340b07eb1d188033c315e081981b0bf442cd7", - "docsite/themes/book/exampleSite/content.en/showcases.md": "358f1b15841b8b4fa5de1d4a2413bc13a4b7f4cfb0d9425dd32b0088964ff854", - "docsite/themes/book/exampleSite/content.en/_index.md": "53dfcc6e06d88c0193f851153225daff84cce4029a8ab35670591b917c13e386", - "docsite/themes/book/exampleSite/content.he/_index.md": "97c7529a40de0ad874367fac1a2d79df15d4f85f57f14e38054b897594999eaa", - "docsite/themes/book/exampleSite/content.zh/_index.md": "9b24296eed2648b76d3b62cd42e8afe130e7e036804406e18020f7a62beafe07", - "docsite/themes/book/exampleSite/hugo.toml": "e1cc2fd379c6c49b2835a8fac2f9e7df0dd48c8eb9498db78e469c6e764c9bc2", - "docsite/themes/book/exampleSite/hugo.yaml": "8ae96b114f68f2fbffe2e1b3c8ae3ab67ce27de4a1adfb4f9e812c998d62ffeb", - "docsite/themes/book/go.mod": "0fb251591b89db4f4373682ec5def8f5949886e6b721c96a07b9669e8d5e3d6c", - "docsite/themes/book/hugo.toml": "b8c0486f738fb5265a697e7abfed196fed5272a7584410dcf46d1b35b6715024", - "docsite/themes/book/i18n/am.yaml": "a5ee3bdc39d1024c19b4eec9c9d7044fee9ad951d5d0b3b668e8ddf61615ea00", - "docsite/themes/book/i18n/bg.yaml": "68b820ed8b0cd0a95e5c15c32e78c1313ed9eea4e6a12c3db6c2c6f0954b6775", - "docsite/themes/book/i18n/bn.yaml": "05f9a9411ba92068ba721a0e1a7dbbc14a3153b9ec4b8bd92c2a95f5047409d4", - "docsite/themes/book/i18n/cn.yaml": "534133758d593f4154a8885cc40680d78fcedf5042e97758477a32a5e4e8784c", - "docsite/themes/book/i18n/cs.yaml": "f1da63b62ba0f436543e7663638b091a672449cca7071bf7fcbe5111c84c18f4", - "docsite/themes/book/i18n/de.yaml": "f889b9e1c012c8d06e80e3e3cf43ee145e57f8700d2163eac1f81c9a6e2214a8", - "docsite/themes/book/i18n/en.yaml": "1b38dd242be133c4a506cc3eaafdd58fc36542fe2d19a7372e3b2a0c6e7c1c05", - "docsite/themes/book/i18n/es.yaml": "fd1c3be35dd4aa44d897fd1b374623464617d6eafc0080d8faf3a6e8506eefc7", - "docsite/themes/book/i18n/fa.yaml": "6bcd040bb477434a3f21e988a20382c01d61a2b90fdd63cc581482fc1dc48068", - "docsite/themes/book/i18n/fr.yaml": "1b68f70ec951538881309e5fee269bda2ceb5f1c65f141b7bc64253e5438a0bd", - "docsite/themes/book/i18n/he.yaml": "4692eb2c915e48a67b3d2f6acbce95fd3f71e5867790cfb3cad0284dc5686d6f", - "docsite/themes/book/i18n/it.yaml": "e9042950695ae91f040378b514160c3633194ea54d634a41432ab2e1744aee60", - "docsite/themes/book/i18n/ja.yaml": "b18a87cce2cbb1a465350e627831bae14cf1843f7637806b074863bdbeef95ae", - "docsite/themes/book/i18n/jp.yaml": "917e7c5692c6f1cbf3cb64179c0169ff0b801af965a5c2a6c72bc706204ddf3a", - "docsite/themes/book/i18n/ko.yaml": "2082302098645ec6fe354b6e029a36b1b83d61889b55676b039076d10c31cd20", - "docsite/themes/book/i18n/nb.yaml": "9843f3a7cb69e023fe58af55273e99ab38af4af9be1c526250324ed71c303288", - "docsite/themes/book/i18n/nl.yaml": "91b89e3776d94603205d1cc021222473b8a341b75de2f434c5011682bcf919a7", - "docsite/themes/book/i18n/oc.yaml": "e6aeb7f6980b86616863e7283e8de4488bd844009f9df2e3a7617accc7d0f912", - "docsite/themes/book/i18n/pl.yaml": "e1bba59fb963a18c9ec7db40f9025cc45a7a9893237bb28cf585b9043ae370c4", - "docsite/themes/book/i18n/pt-BR.yaml": "55312f44c91aa7e5d72b2c02cc69f28308a187e79564aacde72d4ef6a2ff202e", - "docsite/themes/book/i18n/pt.yaml": "846f86242c3d96ce457b60213e436bf091ba44d5e1ed04872560204ecd50b71b", - "docsite/themes/book/i18n/ru.yaml": "108ad3c4811f2a3f2555e5fd73c2fa25e20b4663184596a8dbdb9889d6841b08", - "docsite/themes/book/i18n/sv.yaml": "c15309e0fefd32de85d4325cafcb070973e2037dea55145b2b4bf5947586ace1", - "docsite/themes/book/i18n/sw.yaml": "ff802c961ff06b69441e00f6128601d0a18a8105d2ca9cfba53f12244d9e239d", - "docsite/themes/book/i18n/tr.yaml": "d3825a2acfc4264e2935768b0668aba45788fdf2203f3b8b8480028795680c6f", - "docsite/themes/book/i18n/uk.yaml": "d61e1f25fd10c401d18c698608244d2591a7e5cc099787efd441eeeba97a1574", - "docsite/themes/book/i18n/zh-TW.yaml": "f4cbc7dc8474b8f4e565f4100dfb05e4762aaa0d84a47985fdd9f99c75a190b9", - "docsite/themes/book/i18n/zh.yaml": "76efc91a7a52cf7fa8d8c8acdb3084305809648c6f6631ffd7b20475682a6c27", - "docsite/themes/book/images/screenshot.png": "e9c6d712d65b21b47dc68bf501fd5845937c33c3ec6370b8a7fc2cb7ca0cbdcc", - "docsite/themes/book/images/tn.png": "24d061cd63e95955121805ec15bd4ea607907b205910089d03c44fa00f56d7b0", - "docsite/themes/book/layouts/404.html": "de477354fd0997ab6947744f7ccb4258fa797d73321352b8e2645d1a4e68cc4b", - "docsite/themes/book/layouts/baseof.html": "799388123172089332f32e133c642a955a88a62adb0b3ef6fafcc41ee3d87d1f", - "docsite/themes/book/layouts/landing.html": "d8c650be975fd3f072c2285ffa5dc7a982423ef5aefe8c501803c9efc95d4d27", - "docsite/themes/book/layouts/list.html": "d1a3d5ea16f55612f3f0c28e6fe678685d41c6b3ad346abe9694537e840cb132", - "docsite/themes/book/layouts/posts/list.html": "aa498229d374e706a02795def10a0a422a8fca8156bb605c49f03f28eb860a2c", - "docsite/themes/book/layouts/posts/single.html": "e28934fe4da248ea8090c915a0758744708ae724b296176bbe4c3261e4f2004b", - "docsite/themes/book/layouts/single.html": "d1a3d5ea16f55612f3f0c28e6fe678685d41c6b3ad346abe9694537e840cb132", - "docsite/themes/book/layouts/term.html": "7d91f05404a972e4a7336f8abe6a33e508041464feeea6d9ed4daa1f0d179582", - "docsite/themes/book/layouts/_markup/render-blockquote.html": "4a9e70317b3d62c9fc535dfffdbbe3899e0cf155ec693dd3fb2c904e43cbc025", - "docsite/themes/book/layouts/_markup/render-codeblock-katex.html": "bc4dd7c45b288dee052a8b48b824dd97a0126831fb62e88da9d89dbe04236a3e", - "docsite/themes/book/layouts/_markup/render-codeblock-mermaid.html": "dcae75b5607d0a0f3740f528c2020eae37ad9c8606b2d33488de0652af2742d5", - "docsite/themes/book/layouts/_markup/render-codeblock.html": "73e2a95e196cc20ff4a371032484e38c7d045e118934dc4f70129a73ba3a3d27", - "docsite/themes/book/layouts/_markup/render-heading.html": "16ea67a5854b56ac36f891d9e60c40ae6e56f2819e0bbdb7bd16cbe753f0c951", - "docsite/themes/book/layouts/_markup/render-image.html": "38aa57b44aed99de669b7feb12226c0501cb7dbb2fb24b6584087e3675535349", - "docsite/themes/book/layouts/_markup/render-link.html": "5f3b1ee5d8bdd1648a9ef559fde2d843aacb72e7d8b945800f2dbad4eae23d72", - "docsite/themes/book/layouts/_partials/docs/brand.html": "249c34b0cc6c747f314ee1223ce4c0c68ed87a77e4f0e02aa9ac05dceb267d08", - "docsite/themes/book/layouts/_partials/docs/comments.html": "d2b03ecbed897b1efd692f868cc59a6692bbb13dd474d02631f1762051bb22c4", - "docsite/themes/book/layouts/_partials/docs/copyright.html": "f1176ca3aec1733bc3ea636e626e4835858fba833f107945c3d829e4a0719a0e", - "docsite/themes/book/layouts/_partials/docs/date.html": "71756e22a91a7c8d14692327e6f85a2144c3c8056158d4c4cc40426718a8f091", - "docsite/themes/book/layouts/_partials/docs/footer.html": "a9da20062df9536109e63338cc6c62f567bcc6f1c0d012a81dfde312a1483920", - "docsite/themes/book/layouts/_partials/docs/header.html": "4cbb919ea4ca9d9d50f66c910417419ba80cb9730a0aaa5254f4e5865ac1c2bf", - "docsite/themes/book/layouts/_partials/docs/html-attrs.html": "eb60bd1eca4462d173207840ef791e41cfe58a597dea5d23fad2db00b230f165", - "docsite/themes/book/layouts/_partials/docs/html-head-favicon.html": "16e89c4d3f87e043470b322f57a7db21151b640bad20a058ac38ef4c8aaee721", - "docsite/themes/book/layouts/_partials/docs/html-head-title.html": "8e349738aef131639acf76b6687cc67b38dd32418f7062c3a866f23b2957ee30", - "docsite/themes/book/layouts/_partials/docs/html-head.html": "49b750f658cdb1bef92dc8f40ba20bc4891a3894e77f0541fc4eb1f48708df3e", - "docsite/themes/book/layouts/_partials/docs/icon.html": "0e646ac0024252a14a06ceab1135559333c310296e4252259baf25c7eaa06135", - "docsite/themes/book/layouts/_partials/docs/inject/body.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/content-after.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/content-before.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/footer.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/head.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/menu-after.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/menu-before.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/toc-after.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/inject/toc-before.html": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "docsite/themes/book/layouts/_partials/docs/languages.html": "af469ae1194c9065b5bfe5719f0ffe3bfb4184cffc53d4b359b15ad0e684445a", - "docsite/themes/book/layouts/_partials/docs/links/commit.html": "8c4aa6decbadd5731efeaf3b0d313e349072654fc8d788063dc7114303ae61ac", - "docsite/themes/book/layouts/_partials/docs/links/edit.html": "c1fafd2094df666b1eb41e988c67fbfe3056aed98174d4d792e6e23b2e254563", - "docsite/themes/book/layouts/_partials/docs/links/portable-image.html": "92e2286fe341b5ff3be0fd37357a93b3da6df2e92c98e4a50c7a7d1badf8d886", - "docsite/themes/book/layouts/_partials/docs/links/portable-link.html": "3b2f6984f91dd1d7af5f02fa76fe1d407a874318b556f933a5d073c4834fba5b", - "docsite/themes/book/layouts/_partials/docs/links/resource-precache.html": "d2f13a814de2ca8e9dec5a6e39aaa4c5b52fd6c6042b719b1291cc71e797f993", - "docsite/themes/book/layouts/_partials/docs/menu-filetree.html": "734745c59386c06866b1fe2166761bbb48825cb991913e6e9b718bb5cefb7eb8", - "docsite/themes/book/layouts/_partials/docs/menu-hugo.html": "9f41cbec35673a229f1b22b4e9f90195b168aabc1439e60395ba36bcac71cce7", - "docsite/themes/book/layouts/_partials/docs/menu.html": "3d4c64f06535ddc5ddb02c51b559dea97bdda5202958fadeb513c9b19a51bec7", - "docsite/themes/book/layouts/_partials/docs/pagination.html": "1f2f57652a7d18b2b7c2bd52d0d3748c11b0c4bc54040b888b61cf8021a3e62a", - "docsite/themes/book/layouts/_partials/docs/post-meta.html": "de86a4d63a53055a0d6aad72b59bda4d8861cc3130810a3cef7672ccba100767", - "docsite/themes/book/layouts/_partials/docs/post-prev-next.html": "939c281d1c5475ef493d905a27bf9ae7c1eec464abb77920065463f29aa81c82", - "docsite/themes/book/layouts/_partials/docs/prev-next-cache.html": "73c98d81bb24cee004f9edc4a9f9bf27a687b9b2a6fc02377b022a0cc6d41998", - "docsite/themes/book/layouts/_partials/docs/prev-next.html": "0471677fdea67cf62053e8db40b4000cedfb65c5c41d68d5f3a1954c6e636818", - "docsite/themes/book/layouts/_partials/docs/search.html": "d94159673f1c002f57a41a6a5dd9601b1c55845b36b9df7bf903f24d0b309254", - "docsite/themes/book/layouts/_partials/docs/taxonomy.html": "59419c90ddf1b27dd33ef014cfc95070aac60788d7fe630e03561322e7c358de", - "docsite/themes/book/layouts/_partials/docs/text/i18n.html": "dfd62754dc30cec852b20bc94f692fefa9aaf9a906badc4ab13fb4a60af2420e", - "docsite/themes/book/layouts/_partials/docs/text/mapper.html": "14f1dff2706d3c37fab82c5d54fd9663c50675abac56d719fedc53c167eebeb5", - "docsite/themes/book/layouts/_partials/docs/text/template.html": "6943289bd807257d9adc998cae972ac4533ebe3faea0a0b441283e2c55874141", - "docsite/themes/book/layouts/_partials/docs/title.html": "fb74243837a7f1887a19fc0314d4aaab897b8017061607b21e006ea7f4d6a472", - "docsite/themes/book/layouts/_partials/docs/toc-show.html": "c686c62588a26dc5d82080c8361c59892f529d82376b2cf04c8a6a585965f286", - "docsite/themes/book/layouts/_partials/docs/toc.html": "642487d8c5a2e7f0909d20ea3930c98672a648416831ebd3c67e0be35e3a295a", - "docsite/themes/book/layouts/_shortcodes/asciinema.html": "44f13797b77392f44a9853aba467c0f58d4653636eb1d5c10778ac53f0e7f1c1", - "docsite/themes/book/layouts/_shortcodes/badge.html": "770534c702ee8c0c7ab2b46dbdb45b13b668cbc8ad763bb6a71cc3ec4bcf8ccd", - "docsite/themes/book/layouts/_shortcodes/button.html": "6bec89979f45bcbe923df2e57616449847fca29eaf87ca6696f5ac30bc2c70b3", - "docsite/themes/book/layouts/_shortcodes/card.html": "9fc7a1e00a581188516d64e6609d25ff09515c9a449297f92662369fefeb13c0", - "docsite/themes/book/layouts/_shortcodes/columns.html": "861f846a253295338308becd1376fe71739876b08fa82353d169ee0d4894d596", - "docsite/themes/book/layouts/_shortcodes/details.html": "20604b5e24b0eab48c85d7b34be91b592af49ba16625fb1341b5d98d4fa329d9", - "docsite/themes/book/layouts/_shortcodes/hint.html": "1a23d5c9fba4caa9857fb41e33230462f635981b7890ac0484b93e35d5c2d413", - "docsite/themes/book/layouts/_shortcodes/html.html": "ca392217e76a616dc9b5e16a01c7fdfe962696696555e49221e85d09a260b429", - "docsite/themes/book/layouts/_shortcodes/i18n.html": "35ff33e495b0b7c796153bccc8ccbe5bdd9140c19c73da0a17bd7f07b8bca015", - "docsite/themes/book/layouts/_shortcodes/image.html": "0decb0c5cb45f5098e63e9b906a37cbdaaa0de0ef29eb7286e256ebec4e9b17c", - "docsite/themes/book/layouts/_shortcodes/katex.html": "b50cb01fcd693db88cfaab0b4620a9af423fedee19aed0913650666a98582e39", - "docsite/themes/book/layouts/_shortcodes/mermaid.html": "ad18f3b92de945cbabddee4a0b6b3a0bc2518fe224579a042a0586103ba5d902", - "docsite/themes/book/layouts/_shortcodes/section.html": "587a676b93e9855390d64050f451ec942b514eec881c752abe31cfd464dd4345", - "docsite/themes/book/layouts/_shortcodes/steps.html": "0f13a01f26c8bbb8944d38e01eb2dc811b7fc31de9d357e30b7e587e5aa8c990", - "docsite/themes/book/layouts/_shortcodes/tab.html": "cee68e31b4c37739c24a86af3297d38cd06cc27dc03484ef7566b17713f92b6f", - "docsite/themes/book/layouts/_shortcodes/tabs.html": "9842de1012e4970a863b3fe6ea274c9e1073922cb2fbe6d2074c6480c89ea512", - "docsite/themes/book/LICENSE": "45bca9337d471329589a80cf1abbe0021e6a8bc08cde0e3c11855603410e79a3", - "docsite/themes/book/README.md": "ba83033792bc5443553f393bd6ac9ab4e24ce52d8633561afc48e634f7fc6b8a", - "docsite/themes/book/static/asciinema/asciinema-auto.js": "edca42f5408f552e3b9ba2cb48dafefa7136c3d1179f81666ab772c033d2586b", - "docsite/themes/book/static/asciinema/asciinema-player.css": "8094d5300e5c1d42c63ce1cabf98028447c511c6d365774cd11a4f684e5b2637", - "docsite/themes/book/static/asciinema/asciinema-player.min.js": "e30fd9e9b061432aee6c2c3e6b64767a6962e5a21649e34647f2754a6847f82a", - "docsite/themes/book/static/favicon.png": "ec83c387aafbc417f3ace190d59761e79137be7b3c6b80bbdb3dd65fa6242d9e", - "docsite/themes/book/static/favicon.svg": "b6ac5f9e61c94e306222476f41f76afbcd340b46b112deb94921ea1f485e9d23", - "docsite/themes/book/static/fuse.min.js": "13bedc6f617f6c54cd99c83dbf78eb4aa195cc9626fcccafb2489f8d770d616e", - "docsite/themes/book/static/katex/auto-render.min.js": "bb53eb953394531aae36fdd537065c4244eb8542901a3ce914601d932675b8ac", - "docsite/themes/book/static/katex/fonts/KaTeX_AMS-Regular.ttf": "68534840bcfdd2bffb6f0e8deb48684dd01e7f04ea2813267577afb906de1d13", - "docsite/themes/book/static/katex/fonts/KaTeX_AMS-Regular.woff": "30da91e84c893f875e252689faebdc590b2871145e8adc7f9a9d4dbd8ce0b251", - "docsite/themes/book/static/katex/fonts/KaTeX_AMS-Regular.woff2": "0cdd387c9590a1a9f9794560022dbb59654a7d86f187aa0c81495ad42d3a7308", - "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Bold.ttf": "07d8e303ce4fc12b4bb54f1004170dd190a1f3db45d400fe68060df3e0897268", - "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Bold.woff": "1ae6bd7475590e97e7f145a89e09ccde322f7a6bc0b91607b1c8b8ee28290fed", - "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Bold.woff2": "de7701e42cf1f4cf0b766c03fb27977207eee2f4fd5d76fa82188406da43ea4c", - "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Regular.ttf": "ed0b74372feefcbb9c0666b2e210da37b7e49fa7fbbf3eeb11db5f693dacfbb7", - "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Regular.woff": "3398dd02302557a793f2863f88e02d96ce10df2abffa07c8e9fa90775116e65c", - "docsite/themes/book/static/katex/fonts/KaTeX_Caligraphic-Regular.woff2": "5d53e70ad607c2352162dec9e0923fb54ecdafaccbf604cd8dcf7d00facb989b", - "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Bold.ttf": "9163df9c7122432e6495b4229fa9071cf9ae86a758ae5efc4924ec2e1a6dbce1", - "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Bold.woff": "9be7ceb88004ab8ad124082246fbfcca4091e36385d4ec6ed1df67375dad50fb", - "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Bold.woff2": "74444efd593c005e3f4573b44524704c0af0a937fe911cca9e94068d0d140d3f", - "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Regular.ttf": "1e6f9579e90e2cac37f8f60a597c436e075c114385652b7cbeb0dec0421291b3", - "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Regular.woff": "5e28753be717dac97f559f49bc10be9cf3c124ddcabda6659d11cb68febc6463", - "docsite/themes/book/static/katex/fonts/KaTeX_Fraktur-Regular.woff2": "51814d270d06ff0255dba0799994fa4d8c84d11f09951d47595f4abb1f3602dc", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Bold.ttf": "138ac28d1663b3037e9c5f52371fa5c63d8324f4a38d22cd573e6ea3a3fd0cf8", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Bold.woff": "c76c5d696297d51b9cb1639c7da4334f0e7dec81b42b11213b5e25ef671bb822", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Bold.woff2": "0f60d1b897938ec918c8ce073092411baf9438f6739465693ff18b0f9d20b021", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-BoldItalic.ttf": "70ee1f64a20f2048c21940ef46d0144fd215baa953ca69afd1e31e98544f708f", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-BoldItalic.woff": "a6f7ec0d846ac7ad975adb8959c37ed49b94acbc4ae436db9ce9e20287e4a64c", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-BoldItalic.woff2": "99cd42a3c072d918f2f44984a807cf7aa16e13545fd0875fc07c6c65f99e715b", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Italic.ttf": "0d85ae7cc30f23790a7f1a58c4a112fdca8aae769b6ba11429af1d98b1b6cb3a", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Italic.woff": "f1d6ef86f3b11a528bd5185199bd2443ecb2b0dead96d88674b5a2c12be24bdf", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Italic.woff2": "97479ca6cce906abc961ecac96faa5f9ca2e61b8e7670d475826bcdee9a7c267", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Regular.ttf": "d0332f52868370fd83ae7fa46470f90c8f2eab2fcf12bc4f88080b340c95a830", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Regular.woff": "c6368d87e8a1a3a5d337623d83d8dc4b868f242a9ad476237d6f8d1e0f168cdc", - "docsite/themes/book/static/katex/fonts/KaTeX_Main-Regular.woff2": "c2342cd8b869e01752a9321dc17213fc40d4d04c79688c1d43f2cf316abd7866", - "docsite/themes/book/static/katex/fonts/KaTeX_Math-BoldItalic.ttf": "f9377ab0271cda59af24bcffbd46a4d0c8a3572ffafdbb38de2ad5ea7b0d5ee5", - "docsite/themes/book/static/katex/fonts/KaTeX_Math-BoldItalic.woff": "850c0af5c2238497febaf5e461d880bf458c341f42f4f330f1b1ab5698b1998e", - "docsite/themes/book/static/katex/fonts/KaTeX_Math-BoldItalic.woff2": "dc47344dbb6cb5b655c8460d561f4df5f501b90c804ad3c6cec65fe322351ab1", - "docsite/themes/book/static/katex/fonts/KaTeX_Math-Italic.ttf": "08ce98e51b04d58945a301e639e02b6998af29fdfd61a7b8afdd07bbfc479d4a", - "docsite/themes/book/static/katex/fonts/KaTeX_Math-Italic.woff": "8a8d244581371912b8f3f5a23e2437cb2a59cd9bcaebb0346e722c05737a2571", - "docsite/themes/book/static/katex/fonts/KaTeX_Math-Italic.woff2": "7af58c5ec8f132a2ddde9027c6d7814decce4d3b822a11192a42a20e2e973264", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Bold.ttf": "1ece03f79f95277d57dc7f6b435a74e1379b0d46104a8530286b60ff49369ea0", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Bold.woff": "ece03cfd83e22c212cdef66feb8442d25a083beb988db3f1883f3f9738d750ba", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Bold.woff2": "e99ae51144bf1232efcc1bfe5add36262c6866b0faab24fa75740e1b98577a62", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Italic.ttf": "3931dd81faed86ba021bb2bbdc36f5bed9a38d6b4f4077aca59b265aa1b02083", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Italic.woff": "91ee67500cc0129aa0ace3ac5c61ff1692102f0f31d02b69347fba35dcb75bf2", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Italic.woff2": "00b26ac825e2095056396e0553b8ac26d3f8ad158c3826e28b4c45b385c4714a", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Regular.ttf": "f36ea897e19f4a2e571d1e900e4e3710e438deb05a842486045ba0a3e616a4ad", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Regular.woff": "11e4dc8a6471ff6d6ee561d53d10fde8f7489e798257ff449c5d37c197435605", - "docsite/themes/book/static/katex/fonts/KaTeX_SansSerif-Regular.woff2": "68e8c73ef42afd3ccec58bf0fba302cce448938e7fc020a5e31f8a952eee1342", - "docsite/themes/book/static/katex/fonts/KaTeX_Script-Regular.ttf": "1c67f068fea8bb09bf099c088b1cf64bd27516a6e07f4684344873564bb66a67", - "docsite/themes/book/static/katex/fonts/KaTeX_Script-Regular.woff": "d96cdf2b3bdd4d64a8fd5f74a4c467f123a8a73931cd435889f08ffaf9bf947a", - "docsite/themes/book/static/katex/fonts/KaTeX_Script-Regular.woff2": "036d4e95149b69ff9bcc0cd55771efeb25ffa3947293e69acd78d5ac328c684b", - "docsite/themes/book/static/katex/fonts/KaTeX_Size1-Regular.ttf": "95b6d2f1a50173bfedb8c63e1d1c99b10427d0a4df4201cb44513b226951a22b", - "docsite/themes/book/static/katex/fonts/KaTeX_Size1-Regular.woff": "c943cc986384f59e86bea5fd7dc50a9c4dfe567a7c05eb40d6790720dead97c9", - "docsite/themes/book/static/katex/fonts/KaTeX_Size1-Regular.woff2": "6b47c40166b6dbe21a5dfca7718413f2147fd2399be1ba605d8ad39cedf25dfe", - "docsite/themes/book/static/katex/fonts/KaTeX_Size2-Regular.ttf": "a6b2099fb555c60e3a0db3a08842ebf1d732c6eb4e4bf44913613bed4fc4e39b", - "docsite/themes/book/static/katex/fonts/KaTeX_Size2-Regular.woff": "2014c523c3210bcc166648c4d4cc57f05b747df07a24277bf71c51e67dc79e3d", - "docsite/themes/book/static/katex/fonts/KaTeX_Size2-Regular.woff2": "d04c54219f9eaec6d4d4fd42dfb28785975a4794d6b2fc71e566b9cd6db842dd", - "docsite/themes/book/static/katex/fonts/KaTeX_Size3-Regular.ttf": "500e04d54f0d51666332c9d2089aa803be22aa878eca539e59fa53c6e522b082", - "docsite/themes/book/static/katex/fonts/KaTeX_Size3-Regular.woff": "6ab6b62e9b62dae2c00dd90f791bd10950be0ecc3490d7d6045f51c2e8fe0949", - "docsite/themes/book/static/katex/fonts/KaTeX_Size3-Regular.woff2": "73d591271b1604960cb10bb90fee021670af7297017e0e98480b332d11f51995", - "docsite/themes/book/static/katex/fonts/KaTeX_Size4-Regular.ttf": "c647367d1dd4e162468717d020e1fc0f1dc5c26ebfdffbe55261713bf88c5877", - "docsite/themes/book/static/katex/fonts/KaTeX_Size4-Regular.woff": "99f9c6750b489c9462bf04900bd3f939df9b829339daaaaa99ef5495cdddea58", - "docsite/themes/book/static/katex/fonts/KaTeX_Size4-Regular.woff2": "a4af7d414440a1c1790825cfb700cf9cf43b0f2c4b04f0ebc523011ad9853ec0", - "docsite/themes/book/static/katex/fonts/KaTeX_Typewriter-Regular.ttf": "f01f3e87d9c6a61c0c081ceb577abd864eb00a612f7ac1620dd6915fad2ef5aa", - "docsite/themes/book/static/katex/fonts/KaTeX_Typewriter-Regular.woff": "e14fed02b1aba7ce9f5afd5844b5d0321b22351febc720e0de8b8723527609f7", - "docsite/themes/book/static/katex/fonts/KaTeX_Typewriter-Regular.woff2": "71d517d67827787cfabdf186914cc3358eda539e37931941f2b2fd4a21f68c0b", - "docsite/themes/book/static/katex/katex.min.css": "23f19fd1a404c13697f7a511d4b8203bec3b22bc920732739879c57e8a7a7f44", - "docsite/themes/book/static/katex/katex.min.js": "e8d885505949f3a5f4abdd5dd0d53696bd1371ad26ffbf4f310dcd77c8cdae89", - "docsite/themes/book/static/mermaid.min.js": "d95f26c976d1f0415ef3f64e6f31f01e439813171acae38b61beabe387a8b689", - "docsite/themes/book/theme.toml": "81441d90610c6969d6948e416f65cd81b96118aad7d6ea457b5dd7b195856768", - "go.mod": "1a3ffdc928ab7415386b9c8bfbe9b24cdac2d67f54f12f4ad5953687828312b6", - "go.sum": "e12956337ce5b0c90e0f137f3051838935003455109513e8696ea006fac3c3e7", - "homebrew/pass-cli.rb": "8a0698d414be4c3eb02eb1db29c6d840a546405ea205298f24abb81f38d87308", - "internal/config/config.go": "4bdf7fd0dee283c655ec8525772b2292eee5290780197ba8d491bb05ef9f1b63", - "internal/config/config_test.go": "89a3d32aa581dec21f795f63ce2a89c63aab526d568c6728088084ab51fba851", - "internal/config/keybinding.go": "339aef6ebe15ba93c8d99ae33470819a76469eb175eaef02a5392bbb7430c133", - "internal/config/keybinding_test.go": "ab29072cf63fc34a831fb97094283eb0a726e4d7a10e970aabc090342a1d6cc0", - "internal/crypto/crypto.go": "1477c28c4d7e9f8ad6c20c3d66dcbbc12a8c1cb2d80f3c4b321f1ff4f88adf57", - "internal/crypto/crypto_test.go": "7753bd4be51aa1198bd9aed2652bbab745fbbcfa6360708e1a6b99efd65add98", - "internal/health/backup.go": "ec9a1d09f08167c01c0feeb426942498e3dfbd8e3cd82be817b03ee8e537034f", - "internal/health/backup_test.go": "75016bd1d3ab7c5f9689cc9a02b908427293423eebb544884a7aa44b45cf31e2", - "internal/health/checker.go": "a696e3d7e6c01fdb916f181d202c90f546479f2b4c8d2dbcbe53e3610805eb3a", - "internal/health/checker_test.go": "ab4f6b054159c77fd097e594b0a7e509dc022aa80617a32e59466e35cef9bcf0", - "internal/health/config.go": "eba4b79f5239cb502ea0672edf03b2c0a1275a268f4dc1d1bd8a9ab27e1bc3a5", - "internal/health/config_test.go": "78e5af8c1c5bdb541d520d7eb5844992aca8f9da1dd3a8a49d2f6860670e4b57", - "internal/health/keychain.go": "6e1f055e6a8df004eae7f1f08c6cc92c292ee277a68328fcc1a0d68a0cebf82c", - "internal/health/keychain_test.go": "1f731b3fc0db710d103fe807bccd243bbb4ead13d3f7f6b318de55244c2b82a9", - "internal/health/keyring_mock_test.go": "d87416553a0045d9a6682d49c78667c3afc7f7ed5c8729454137ad47b79a800d", - "internal/health/keyring_production.go": "15006aa965f9564e844d95f552cb91e4a3d5b637c78f5b591181b76c4bbd70eb", - "internal/health/keyring_service.go": "492cf9753a9aad188419918d57d1f39b7994a2d9ebb96e107870e20dc4938de3", - "internal/health/types.go": "c806d5df05527e564b91c62c698a1c682835bb921046dbbbed798f6f3b2c45cf", - "internal/health/vault.go": "2d35efbab34b96552108dba1fc8e75715749889ab3fd046549824d6933b48f6a", - "internal/health/vault_test.go": "c6f2811fc790ca8a544018bf218d1a28596730f6287ba6ed244836a45f60b166", - "internal/health/version.go": "8dd64df30f3784ae85729c7a8e701188b10f4822852200a40844a36899d80ea7", - "internal/health/version_test.go": "b6703fe63f938def85fb99239e78455fa1df80601509d9af277543e2d9d06d02", - "internal/keychain/keychain.go": "9444e0d3deb9e240ed04868963fe055048560ff52912c82a71f854b3168a6445", - "internal/keychain/keychain_test.go": "3fbb937d553dbbbeff643d8482ded08aaaa214f366919079fff07c33afccac87", - "internal/recovery/challenge.go": "a0c1f6bf2259a29d32da9f1ac17a53e39133f7966e23f01c22a7ad9772250eaf", - "internal/recovery/constants.go": "9e09245e75fb841bbdcdb4b4b26361d63026b3cca1df0dc5a5ddd6d4ca4e31fb", - "internal/recovery/crypto.go": "92e9955a85bf11d1092d93597f07554a4ec6b0b502bcccd7ec51c6f4d8e9dc9c", - "internal/recovery/errors.go": "87fad0d7aae5707c74bd5696ef926acbf0373714852dfb8bec5ca7b8e4ba8488", - "internal/recovery/mnemonic.go": "9cc6f33390182d6ff068751c4f13ef62fa7ddd8e0473cb0df7386fa4c7b99cb4", - "internal/recovery/recovery.go": "5d49bca16f4aa2bf75548d7faafae60db6ba3cf1f6e96a3cf3a43579dc245981", - "internal/security/audit.go": "ce9c7c1212180f5369a217d471b99c69058c38198b8bae1ace3d122a1b72d7d1", - "internal/security/audit_test.go": "c30cccbd6ec79881cb73093fa10c54565d49222539441842e68560e696b54f5d", - "internal/security/password.go": "d0130b1bb05895d3a0ecbde6c18e551bd0a95e69c2ae81cc2b8af9297309c911", - "internal/security/password_test.go": "505feaddd5cd170082383f56a5babe02870b1812839f8dcb2553fae215ed1978", - "internal/security/ratelimit_test.go": "0810cdbd38671cdd03e297346cfceb327355dfe8cc5974289232816b06ea97b3", - "internal/storage/atomic_save.go": "fdaebc0dd8cc50172b4bb1cfa795d0b1fc3a981ee7e47631ca7521ea80dde872", - "internal/storage/atomic_save_unit_test.go": "780f378cca3084aa13e69c7989dd2236d9f7c12c56dddbdc6c64195fca08081a", - "internal/storage/backup.go": "ccb257153d4289fc4262c11430851c86122ee7edf6c526d5374e87ab712d43cc", - "internal/storage/backup_test.go": "badb1568eebda7a37d42f88ae72e9f9c5d2d5d4dbb2f5c3c82f5414001426345", - "internal/storage/coverage_push_test.go": "cb0960272bee2548a695e78933f91c042d3b0bd1f9039c56e12d33deb068a13f", - "internal/storage/errors.go": "21b024772cbe1d95f0965f6279ae40c8661279a95fb816c395f17d07ddb72923", - "internal/storage/filesystem.go": "3ffffcfae9cf862a1a81bd03f81de8f421fa829ab8044151b3ac1dc75ca392a0", - "internal/storage/filesystem_spy.go": "6e8822d6adf87f6daf43f63acfdea09a0012583973c486bf4f52b701c958cbd2", - "internal/storage/iterations_integrity_test.go": "adcaaf22f5068749fb65f0e000a1bab3309d655e92bf5f73828f458c7de9b636", - "internal/storage/iterations_test.go": "492efe467c83376cd24b3dc010490aa2b511f3ecf0da0d672aa6ea3371dc3db0", - "internal/storage/rollback_critical_test.go": "c2a4f46cd9ad5a482394e20c4c1e9e9dc9fb4701f9585733e54c439b341a8fc4", - "internal/storage/rollback_test.go": "228600be6611dd1fa75d55c46f91825e07016aef528de1c492450226780ac66b", - "internal/storage/savevault_error_test.go": "7dd88b0c76df4bc827b0dc6e05e23b6caf216d89d063bdb0c581053cb8583e20", - "internal/storage/storage.go": "cbafb5b99b9ff1c3e3f504d4e737e9ea32adef35bd4861468ea763128b268cf7", - "internal/storage/storage_errors_test.go": "57a2beac0869e5d72722297c43b5a6f8ae8b25e944653b84966beb636ef963f0", - "internal/storage/storage_test.go": "4aa1f93f23c619aea1641f7de4ea009d5289ad36d1fd1f2e945996e98bdc0b3b", - "internal/vault/firstrun.go": "575f5ce7ae8a26f53c0b2ead4f12ff172c718384c5ef8bc8a6ab11410ea48cfa", - "internal/vault/firstrun_test.go": "5b3d0724b9095b23f2432e86d4c16694a91a0b98514bf85f5e462090754f200c", - "internal/vault/metadata.go": "94cbf40d6c6f7897c058d1bdfbdca8379b0063c66ee91b4575c2b5a48c90a304", - "internal/vault/metadata_test.go": "61e4d37575c735d11c88b31caaedd3e1166041a2c25e6ce39e30a92e165b9d54", - "internal/vault/vault.go": "1bcac600b2125c87e83915b6ea8458980dd1b3ee134d8b47a1735f0738dc6d3e", - "internal/vault/vault.test.exe": "71f71c3b583ad1906f59146da5f0d3956c05d95fddc13bc32d06ed8634d6dda4", - "internal/vault/vault_audit_save_test.go": "7077beba8ae49b05dddd425d32714898b9825400404a96d80bac168fb231f21d", - "internal/vault/vault_test.go": "f07e1515ec4cfe3227d5f4b5fdb2754082116a7f73bc580ea2fd97bea48e8f54", - "LICENSE": "a66c73aa52d80b8e6287af2d3b4ed036ceb2f9decb540ed411cccc7a39ad215b", - "main.go": "b9d587d7c749d5b70b152fe8dc42f727b213ca765ac8507359ea4b5b5ce6d374", - "manifests/snap/README.md": "e395fff58a46147995b5e4aaf981f624b615b4dba8b3ccac3bb65fb582bb3d7d", - "manifests/winget/pass-cli.yaml": "c4a88dcb7b345331bd742c5663692abe861237bef3c6903aeb16e7773837fe3a", - "manifests/winget/README.md": "e8ef23efb46f2e5c5dad763e0ea17fd710ed38aeaeb2b7def28e7dd0fc45f37f", - "next-ideas-&-features.md": "f869b0b1b016db2cd59800e8ec39454deec50e34f50806362e9038cead4ed4a7", - "README.md": "3b05f3537f17c075a92980d2267d31e0b9c9f74236bcd63067c296dd07d63a15", - "scoop/pass-cli.json": "35b1c6462993e009b89a98ff3303e44c663a89681c19592e1576ca8d3a7213ec", - "SECURITY.md": "46b11317eb0c8d8efe21f891060dd4c722d973c8debf7c89fefa99b8d829ccf2", - "specs/archive/001-add-manual-vault/checklists/requirements.md": "85ab994ef29fae0d0083bd0b1dd34fa1edc7ee442904279b1c140241959991ad", - "specs/archive/001-add-manual-vault/contracts/backup-create.md": "e928793fb396f7adeec5075726e459994ec443f8fde89de83cb5a2fec5ed3db5", - "specs/archive/001-add-manual-vault/contracts/backup-info.md": "47b763b52a7d1785f9c0debc682a82b578eec1e45fe6b2e4724ea4fed216ff4a", - "specs/archive/001-add-manual-vault/contracts/backup-restore.md": "47418485bae535c22cfade20b532e3a96e1ee381cb2ae46d4067671409f57bcc", - "specs/archive/001-add-manual-vault/data-model.md": "e663af445c06e34ef55cafdcb4e0847764c52bac1a1aec4e057456517344bb91", - "specs/archive/001-add-manual-vault/plan.md": "125a0a73ad3e1609a7302aee04364d49f626a595d7c3229a800972872dc7d490", - "specs/archive/001-add-manual-vault/quickstart.md": "b5cdd1ac1c2de45ed3df2747ff03b57db9038cd1ddb7cb5d171794a6a5daf26d", - "specs/archive/001-add-manual-vault/research.md": "f60b7e93780f937123680bd6bd0bc9806be7fd63a5057f7d6e288acd896503fa", - "specs/archive/001-add-manual-vault/spec.md": "baf3a3402c1070f2585519f0d3cc806811ec748359870366c41a158a8d9050fd", - "specs/archive/001-add-manual-vault/tasks.md": "3ca42a5f4bde4603261639315d56bcaadc84c8fbe863a1c36732f46b28b88869", - "specs/archive/001-remove-vault-flag/checklists/requirements.md": "63db9bf23a5ee51e380d1e140928a8466fc49c8ad45e894d754430d2afac3a47", - "specs/archive/001-remove-vault-flag/COMPLETION_REPORT.md": "4c963fbe70aeb2eb9d1e8f74f74ac1efb8cd261ee42133a461488fd7c4480927", - "specs/archive/001-remove-vault-flag/contracts/config-schema.yml": "715cfc569b16c879dcdfe6e80aae5cd8e1ac11b9999b113ede91bdaec6ed5027", - "specs/archive/001-remove-vault-flag/data-model.md": "852c78408738673d164f8c7a48e857fb10bfff88a180f7aec079bca96a85016f", - "specs/archive/001-remove-vault-flag/plan.md": "bb01dc875519003666cdbbb76ef6deecdaf8e13afec6731dbe0aca3c248d8bb3", - "specs/archive/001-remove-vault-flag/quickstart.md": "76a96c2a731fa9a7cba916a762dbd1d28c1d98105c3e79b52ec3008d686e6237", - "specs/archive/001-remove-vault-flag/research.md": "6b789837898e4b3fc1d1fa9e166da14eb37712e22e9bf870eab36849521d7a84", - "specs/archive/001-remove-vault-flag/REVIEW-FINDINGS.md": "747a7ab88c685ff5429b271d71837bb48a33a7bc6bfd4560c6f57666df890a8e", - "specs/archive/001-remove-vault-flag/spec.md": "37230a98d9d9dfadd8fe1ba62dcdbe2308deafb33a2ef000cf1d28f27eadc674", - "specs/archive/001-remove-vault-flag/tasks.md": "ec78a73420747331b74841b6cdfaa521d6425637b64a5cb531b1c7f5055a58e0", - "specs/archive/001-reorganize-cmd-tui/checklists/migration-safety.md": "f04935aec9860e70ebf58a5bfa54312b3ac46a6d655afcd68fff4f7514191ae9", - "specs/archive/001-reorganize-cmd-tui/checklists/requirements.md": "4569dc3a5363068712df776ab2a47837fb6703ceb6f8b6379c499159b7514b24", - "specs/archive/001-reorganize-cmd-tui/plan.md": "5858b239ad711b8eda05a9a84b356a03faa8a1fe3d735912ad342ca43cc762fa", - "specs/archive/001-reorganize-cmd-tui/quickstart.md": "92ca7d338dfbf20d195d3818188ee6d302203c5a592cb57b0665cbaffa40a077", - "specs/archive/001-reorganize-cmd-tui/spec.md": "026879d1383b5d95a3ef5332146c656858bbd72a9eac5d485cbc9d5ca2a66cd4", - "specs/archive/001-reorganize-cmd-tui/tasks.md": "0bc12e8f84098f2664a9740fee5c724b92ea96b65c50dfe7e649c1c696bfb9c9", - "specs/archive/002-comprehensive-documentation-restructuring/checklists/requirements.md": "c854bd4455fdb3ee0917232294291e7907a9fe516f912088e0f97911fe56040f", - "specs/archive/002-comprehensive-documentation-restructuring/data-model.md": "262177e2e175ac1af596630788161c65e9119eeda39cac39296d105e1c92c161", - "specs/archive/002-comprehensive-documentation-restructuring/plan.md": "5522512ba4ce2cf0eeba3a9338ea41f99010721765933670481eeabd904c8513", - "specs/archive/002-comprehensive-documentation-restructuring/quickstart.md": "c84eb6967b65adcb7bc2d1ac3fab82c0bef4d6c1013069297ee284174ee9cb6f", - "specs/archive/002-comprehensive-documentation-restructuring/research.md": "f122a9846c10819cecc86ca47751f5316c3d01bff6c6fb9571e7e1b0d4eff2c4", - "specs/archive/002-comprehensive-documentation-restructuring/spec.md": "b72bb64dc75bf61c3bff03aada4e35bb9d9516ef96fe913af185b596990869aa", - "specs/archive/002-comprehensive-documentation-restructuring/tasks.md": "484a03834364ec6cbfbf21c7971b6a92c46a00af6033fcf20b2db6701ca769f8", - "specs/archive/002-fix-untested-features/checklists/requirements.md": "ac94492cc31a31cc1bda63c6f89b81eb3030ee4168ad24d83f769da47255d04b", - "specs/archive/002-fix-untested-features/contracts/keychain-enable.md": "348fe1a8fbe428ef6f6967e5493008c6e665f27651a39043caf198a97321c02f", - "specs/archive/002-fix-untested-features/contracts/keychain-status.md": "e719155a6e05d64e077ea661d716e51f4e245207df82a374e575ea8fce2f1c73", - "specs/archive/002-fix-untested-features/contracts/vault-remove.md": "f808b94e94526aba52bcec5148d0f4753387ba25b61c3e86d9c60e873d385e9d", - "specs/archive/002-fix-untested-features/data-model.md": "069583fb7032d126ff5e2d812a67fcaaae998325c449a3b5862e24f55620cb71", - "specs/archive/002-fix-untested-features/design-improvements-post-spec.md": "68f8b9cd6ce505011ce0db405e2dbbc6f7c2aa4dcc0d60a884869790a3047d8a", - "specs/archive/002-fix-untested-features/plan.md": "99423f57c86f06551fa9ceb42901e8dada520734f46a6cf65302adc5d455f9ba", - "specs/archive/002-fix-untested-features/quickstart.md": "6b228cbd40c40b4f4cd33a302b790ee7625124987d4945668dc1040ee9d9f91f", - "specs/archive/002-fix-untested-features/research.md": "ad59cefdb4cd0d34df9251b4e1b5f660be8f41b02dbc2765afdec4349eeb76f0", - "specs/archive/002-fix-untested-features/spec.md": "a1ad70bbc3922e5f5ec9aa93754e9125d57bcee28e22a18468a5501fd468ecf7", - "specs/archive/002-fix-untested-features/tasks.md": "fb9fdb34eebe661fc4cf1bd302aeb5d38e9873f2291af095a4ad352ac33a5409", - "specs/archive/002-hey-i-d/checklists/requirements.md": "d93b7ca4ee23dbb3a05f3627ac1c3a63b10a1134e984815f8d17fe05b4cb2886", - "specs/archive/002-hey-i-d/data-model.md": "cf237510ac9cab6ad22c074d54a0a2463df60f1ede44da7740b569762282a2a8", - "specs/archive/002-hey-i-d/plan.md": "0e660b20fab7620e431bd9a6b24eb2ef5770fb574c5298f381ee6d12cdfa847f", - "specs/archive/002-hey-i-d/quickstart.md": "981710f8da7261d6bfe45c86d9bdb939f55f473c3e589ffbae7ba4762b22043d", - "specs/archive/002-hey-i-d/research.md": "374b812a49a3372a0928b274bad0de97bacd556ee4d267a519fcdf9c0d7cbd01", - "specs/archive/002-hey-i-d/spec.md": "3da2551c83ec24938e0a59cab3e9563b066fd1fa6a7915e27bf7e5a45226e985", - "specs/archive/002-hey-i-d/tasks.md": "cb0052b478605b8582a80f0629b7d0e43106dd1c02dca74a923accaf2121ba39", - "specs/archive/003-bip39-mnemonic-based/checklists/requirements.md": "f47340370cee2f4d10be732c626eff39f16e575e6d4208db5a668dd2789b6268", - "specs/archive/003-bip39-mnemonic-based/contracts/recovery-api.md": "83203d5593bb86b2c364ba318bc8ef1438290b4a305c38b51b3cf8745eb18ecb", - "specs/archive/003-bip39-mnemonic-based/data-model.md": "2ddcd80a0fdd46ddef9d733714389339e3efd94c59a7db2747da5af0e959b128", - "specs/archive/003-bip39-mnemonic-based/final-validation.md": "60df06702ba2e66e26b3e86fe67fdd37307056c5d03dddf26f37daaf54882446", - "specs/archive/003-bip39-mnemonic-based/plan.md": "2c524124ae3db71d258b8b772a1704c69da65a2c3f731ddf26d769580ea8f1e0", - "specs/archive/003-bip39-mnemonic-based/quickstart-validation.md": "0da5058c8f0eb9d7442ca88b945c17ebb8fd6f52eb07cf99bba447a764c4c7d4", - "specs/archive/003-bip39-mnemonic-based/quickstart.md": "4ab1e93777f9e7e1fd110921f7485d358ad88485f174a9a3e1923f28ed33a4af", - "specs/archive/003-bip39-mnemonic-based/research.md": "8604676b093b85abf3b94905d62476221b6ad610d107612b81f75673c77acca9", - "specs/archive/003-bip39-mnemonic-based/spec.md": "0eb0d5f289c0b5f1b3580c54988e96306e5cd50d29539ad0b50ff8d83ad4bf58", - "specs/archive/003-bip39-mnemonic-based/tasks.md": "fb6455b5abd58095a075c88f1ea07501be5d0d517f54ccc2673e783908c7986b", - "specs/archive/003-implement-atomic-save/checklists/requirements.md": "db1ecccf06ab0952862d250b678fadef353d210f6f4b1269073a946d4f64d238", - "specs/archive/003-implement-atomic-save/contracts/storage-save.md": "58bb32b71bffeaaa628684293459f8cebfd58bb69aa11ef99dfac892bd059ed9", - "specs/archive/003-implement-atomic-save/data-model.md": "07e7e7ad6ae93d0caf504ab047c8c98ad0e07673255b3a2077894a638d3aa159", - "specs/archive/003-implement-atomic-save/plan.md": "d9a583e5f8f5e95f42ded515b80b10797407087b8f3171736f2175f80a4a01b6", - "specs/archive/003-implement-atomic-save/quickstart.md": "3868ce7b107f4321ddcdbeba9e1bc1ffc9c1fe1afca5eee9036106d559b3455f", - "specs/archive/003-implement-atomic-save/research.md": "19c0c6a6842a3e37234608ec6d477d814abb7ffd1f6bef2a97f218b3f71a9764", - "specs/archive/003-implement-atomic-save/spec.md": "20f5cf017e13d3bc7a17d4287e2e97643f66d0c6ae21508cd6bc755929f113dc", - "specs/archive/003-implement-atomic-save/tasks.md": "b8f8719e3951f088b5a5d2cf2c93080dbe5cebe8d386228f01c4629f57c27915", - "specs/archive/003-would-it-be/checklists/requirements.md": "4f082475951eb4c3c22addfb6c291fac37a2bc669f376d2cc74c72789cf97353", - "specs/archive/003-would-it-be/plan.md": "c461bd531ea3a01975e162e62ee15628ceceddb8f4e80b58825c1817af7f5a8c", - "specs/archive/003-would-it-be/quickstart.md": "f63292b34de55ce6af7aa2559ceea7d0984d76c2e7d27548e3af29dc02ff08af", - "specs/archive/003-would-it-be/research.md": "f38288af0ae3c418486b759b3c15f35f419390fc28cd509cf56b944029c66120", - "specs/archive/003-would-it-be/spec.md": "b8878867d47909f0f7e9e97a6e6517423a2e4368ae8e22ad4d59bee350dcaa14", - "specs/archive/003-would-it-be/tasks.md": "0df95aa365d128b83292df904ab5884370586e6cbda5b4e5b0a06833287636a1", - "specs/archive/004-we-ve-recently/checklists/requirements.md": "2c5cd6b9d441e8fc14fb2a6d0261a4b071e81f8e2c170b85d3dbfdec4341b664", - "specs/archive/004-we-ve-recently/contracts/tui-usage-section.md": "c90048389a98cea14f7686c842ec03c44e1c155a67715314899a7240324ab500", - "specs/archive/004-we-ve-recently/data-model.md": "6503b739589b7dd8c75ba642ef7d6e20ef1642307095b1b8c069a1e432799923", - "specs/archive/004-we-ve-recently/plan.md": "d0c5de244bc0ab235a0f3850b8ddaae1d1de5da9b4ffdec5f338843a34477478", - "specs/archive/004-we-ve-recently/quickstart.md": "634ba11d00be560b933213cc405883d082f832b2dee82b6a1bea860a71ab5239", - "specs/archive/004-we-ve-recently/research.md": "5cb1c1e3e81e8c9f32f40c39e087715dda7f7f36196148740b4a9dbd74bade9c", - "specs/archive/004-we-ve-recently/spec.md": "2fd2f5075b70f463d6e19af569897f10bc8bbb78d8c881feea83107c756bb8cf", - "specs/archive/004-we-ve-recently/tasks.md": "48942618204539eedccee78fc0478066241ea73353de2345ca5ebf15df3f52b9", - "specs/archive/005-security-hardening-address/checklists/requirements.md": "8a3c972e32bb30adcce0278d25506ebb34302c1ebf73e174e3ca203178a97457", - "specs/archive/005-security-hardening-address/data-model.md": "daa06fc69e4fd01bb7f73f5cc5d7276eb27007375b8cd16701849e53d6f069b0", - "specs/archive/005-security-hardening-address/plan.md": "2d003dd5c25eaf3432d79c4fa90a6cccedbabf81919b4e7559835310e8ab1906", - "specs/archive/005-security-hardening-address/quickstart.md": "1539202a8c8177a7cc8ba696bef11c1674bf0a602f86db3f29bd7d0ebe8ccfd9", - "specs/archive/005-security-hardening-address/research.md": "21f8e3c930a58a9368f8ba8c1f794baa279132cbb3d8d8fcd83dd5b76d92861d", - "specs/archive/005-security-hardening-address/spec.md": "352d750774c3a6bd7306979ed59f718bb404914d60eb0c0a6948f728fa3457fa", - "specs/archive/005-security-hardening-address/tasks.md": "e80ed8391beb64faea7382aee14355ed6fa2ac0a6588f6ff63d766a7588232ec", - "specs/archive/006-implement-minimum-terminal/checklists/requirements.md": "55217e3e22c746786d0efbb988ceac4099651288188b0e2ce0324b01f6697c3b", - "specs/archive/006-implement-minimum-terminal/plan.md": "3d71b3d2da2d70492c26f22d0ebde64068c9720073ad6895b19859376a132986", - "specs/archive/006-implement-minimum-terminal/quickstart.md": "913a4c3977f2fa01003a7aa04f563c2226ed8cf922b28c4aa035120f992075ae", - "specs/archive/006-implement-minimum-terminal/research.md": "471088d59ef143d0c8ae1bd618b1365c38a62a9485ee5f6dbb84ac17025a4274", - "specs/archive/006-implement-minimum-terminal/spec.md": "e2f24e50e5743b75e42c046a6526370eb73d998cd36abc3e5ef12ecd9c837028", - "specs/archive/006-implement-minimum-terminal/tasks.md": "3d3ff40bfcb1c6854b65f5446a9665a339a2716ef9d3555c74ac6a1de4170867", - "specs/archive/007-user-wants-to/checklists/integration-testing.md": "a8b1bf98aa0adbb2ba847792131f33bc80b2aada5b345a0820dcba8f08e8d9dc", - "specs/archive/007-user-wants-to/checklists/requirements.md": "f8c8bc53ba1e19a72cae47519d98940afcd1d621f0c6296530f7edad46ade533", - "specs/archive/007-user-wants-to/contracts/config-schema.md": "ed5593788f7f331f1f56f7722a6d7536fb357fbe492abea832db949cf0191129", - "specs/archive/007-user-wants-to/contracts/config-schema.yml": "c1c5c287df0bd9ded2228b8feec2d6dc11b2dc7e66a10c9bf94a46dfa5c20451", - "specs/archive/007-user-wants-to/data-model.md": "beeb225c16287773fa0c7a56c7a9b065d876bf0cc1aeaf19ad0aff27b04acddb", - "specs/archive/007-user-wants-to/plan.md": "8184e5ffc3a94e07c13e0119d7087b7992c2c951d8f0fd37c83a364141c7a34f", - "specs/archive/007-user-wants-to/quickstart.md": "16937a0b5f1c9c278b9f73345f452bfd241f86fe327c9fcaa0359daaebd66e6f", - "specs/archive/007-user-wants-to/research.md": "61314e5761e8ef6318ceffdc63e42b5f87286294c33d49dd9115433a05fc0e13", - "specs/archive/007-user-wants-to/spec.md": "c0139cf7cfc9cc7f9dfa40fe669ddd475b79af71d15600fba1bb12b8a58a52e5", - "specs/archive/007-user-wants-to/tasks.md": "e5451504ab60e0b43d4b74d8b046a14433a075537bbcb823fc8e66322467486a", - "specs/archive/008-review-and-update/checklists/requirements.md": "7083e4b45b9d7e281de5202cfcbb44627aa7b388dbbeca07a31ce875b2af7743", - "specs/archive/008-review-and-update/contracts/documentation-validation-schema.md": "532d37d9cb20269f9ae08a8da4a3e77ad86542401e5b3ad20a8d675e98a6ef13", - "specs/archive/008-review-and-update/data-model.md": "1c675f9d76f361d3c7880fa5b7f97cbbe5ca72908f47e80cdb151f2dec03f384", - "specs/archive/008-review-and-update/plan.md": "675894252ae5dc31975e782445bbc61ccd4834d0c82eb8119ef751ad092bcd73", - "specs/archive/008-review-and-update/quickstart.md": "1a182277c0b6a4f4461882c60559d56e84916166ec86695dfbb882f10187dc5e", - "specs/archive/008-review-and-update/research.md": "5ee24a521c4f6d4d4a624451e58639f2f1ebf03f289aae5b8606a26bc7b3b8e5", - "specs/archive/008-review-and-update/spec.md": "9dac1077878d49976fa8f242cdcb0b1ee895e232fa084ca0f7e59a9d4857fb7c", - "specs/archive/008-review-and-update/tasks.md": "331c9255b0d0cd3099ff083cb5ea7c312ae3d16dddaabce5a41bbf1023b78adb", - "specs/archive/008-review-and-update/validation/command-tests.sh": "2586b0c158472d7caaa26b21429707a0b0015618334fe8eea8c62af9481d0b85", - "specs/archive/008-review-and-update/validation/cross-reference-check.sh": "eeeda0aefb73126008a90cc3161689dc16f0be6975fa83473a6b9c6e76126f8c", - "specs/archive/008-review-and-update/validation/link-check.sh": "0652367b0d38c93c12292a2f5a5d92018d3095a4f554833a9686c96e94a3cf49", - "specs/archive/008-review-and-update/validation/run-all-validation.sh": "133d8dc4d12af987057d136a711f501f43905f7d82815e9d48572ac3454566f0", - "specs/archive/008-review-and-update/validation/tracking.json": "550a43b384238e5e4f0d3bd5055c76fd71e0b3130a77d83cd72c3466507441d3", - "specs/archive/008-review-and-update/validation/version-audit.sh": "1e5568339e00b690cc008561b1f1bef69a3afdf6c2e49b7831c3f49992a98071", - "specs/archive/009-documentation-cleanup-and/audit-checklist.md": "bca75b0b9dcf0afac4865119d3c8825e2d99e19a4e0d0d1854d0424340e312b8", - "specs/archive/009-documentation-cleanup-and/checklists/requirements.md": "d2f7086c9123d533f852bd551bb4c16b73f6121988347c479ebf500f95744f2b", - "specs/archive/009-documentation-cleanup-and/plan.md": "536d932b93d2f69f2d7031f6ea9a77dc4f729cff1ddd8ca2f53389b4fd85a329", - "specs/archive/009-documentation-cleanup-and/policy-structure.md": "a431139b0f3277a39831cf814ca3feca033eced5ef865b7689f2ba0149685cad", - "specs/archive/009-documentation-cleanup-and/research.md": "fdeabe57535d9dee54559f2fb0bba648f3adab4b7a5f1dd288fc95192a64b4d1", - "specs/archive/009-documentation-cleanup-and/spec.md": "6d8a4f2fd94ff16a105a9187806eedfa10c0ad2c56ddd86105b0b41bac1371f5", - "specs/archive/009-documentation-cleanup-and/tasks.md": "fed11c53f257718025b1f45993fcb0e577cc8aff796d43c203251084c9cbf89e", - "specs/archive/010-documentation-accuracy-verification/audit-report.md": "62c31ec758e700def622c6bc512c5d24875c9d9712419afab36faefe12d3b930", - "specs/archive/010-documentation-accuracy-verification/checklists/requirements.md": "70633a978723a03872279a1ef8a9705e9a9dab4e248b521d7098e11d73abad7e", - "specs/archive/010-documentation-accuracy-verification/examples/migration-bash.sh": "882cf3287f6e64ee6e2f78bb63aed391f444c08d322e28d9b5c1835712b3180a", - "specs/archive/010-documentation-accuracy-verification/examples/readme-bash.sh": "b8ed1abecc98e11fe53b11d324133daa452651bb903af35b1af09c53f25262e8", - "specs/archive/010-documentation-accuracy-verification/examples/usage-bash.sh": "5b82c9c8e75c93b7021ab67fe8ad873b5677ca441c9970bfdd56826ba28c01f0", - "specs/archive/010-documentation-accuracy-verification/examples/usage-powershell.ps1": "dfc5ef7987d5af4cc44559acf9919853f7ab15f8db84c1b63d1407d8a5feacb8", - "specs/archive/010-documentation-accuracy-verification/help-output/add.txt": "e30d2019925568bc2914f0bf0157083ba9d979fa24d9f58a3e2d91dd3e0f0909", - "specs/archive/010-documentation-accuracy-verification/help-output/change-password.txt": "ccde93249bcc8b96e8d95cb79293a59c72824f0f484a8d7cbefa4dde5cfe84a7", - "specs/archive/010-documentation-accuracy-verification/help-output/config-edit.txt": "52921f0e7bf2a69cb23cc5c006b40d55b0491e5986710d23c2f33c234a4acb72", - "specs/archive/010-documentation-accuracy-verification/help-output/config-init.txt": "e83a3e7a159505247ba50d3425c095e7b457e229b43119da0cf5a0add0ae2857", - "specs/archive/010-documentation-accuracy-verification/help-output/config-reset.txt": "80c007b1ebf387ec54f2357b1bdcf3bc330639fc95c5b0325b30d1c0320c9798", - "specs/archive/010-documentation-accuracy-verification/help-output/config-validate.txt": "1e0d6cce38c6a5973771b36c3a14f44f1caaa1014917cc00a140526e83b73281", - "specs/archive/010-documentation-accuracy-verification/help-output/config.txt": "b13a8e83c339103eed6f5b521d0c6e0c519e5d40406bce9ee3acb238589b14c0", - "specs/archive/010-documentation-accuracy-verification/help-output/delete.txt": "af8ec41b9f742a185b9556a87cb114104b5f836487da5bb215722baa9b7278b6", - "specs/archive/010-documentation-accuracy-verification/help-output/generate.txt": "9954d6b774cb1c9c2e2cbc7e0651ca1f547dab70962875daa3e306dd0e6dc36d", - "specs/archive/010-documentation-accuracy-verification/help-output/get.txt": "16317167943e549aff5342e4f8f8a165b7f336ecf3a6857193bef7c87ce85e69", - "specs/archive/010-documentation-accuracy-verification/help-output/init.txt": "baea8be8c79feeb36fce5ac5ad1c84a4cb0a244f6af49dbe55ab50aa0f42ca74", - "specs/archive/010-documentation-accuracy-verification/help-output/list.txt": "40a95f04df54307c0f14f47fbdfa8dbab67a56942861ccae73b600d1b8b1e545", - "specs/archive/010-documentation-accuracy-verification/help-output/tui.txt": "a6bb8649bbac0c2866f2477e631d27e2a677d039741fcfb73b90dbebde7be614", - "specs/archive/010-documentation-accuracy-verification/help-output/update.txt": "8a6f58cac4a36e0c51a37c6947dd01e7cf40ad5abc1fd3687e2789aaffbc45c7", - "specs/archive/010-documentation-accuracy-verification/help-output/verify-audit.txt": "f4fbbd5684f873b454182608d31824fb442aaa336afe01753297b7de49e3d212", - "specs/archive/010-documentation-accuracy-verification/help-output/version.txt": "6a18ea7b85e4fb8f8a6c0141f00dee2d2d993340da92ae59ac742a848e6e4424", - "specs/archive/010-documentation-accuracy-verification/migration-script-test-report.md": "da3b93f5170f0e81e579de5f237f751daf8852c613ea9e8ebb57a4295fc8c9c1", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/manual_tui_test.md": "88c61d58c1a178a492311aeccd42881189c0a4afcf6c4dcd1b8b1c053d3c271e", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui.exp": "bdadb8c3892e22a2f223f63fc13bc0985aa4081c0fc6615612efb807367a097b", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_comprehensive.ps1": "422906835ee81d897481b992545272e83e9cbd0dc5bfddbfc76939e39d07c9be", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_simple.sh": "d073a6edc78d70b6a5eb23d664ca64310acf03cd7d7119b3e1fc0a9a00b8d526", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_analysis.md": "01348fab2aa1ce4d8bbf65fe3dd523da21abfba6c1e41aa60d871b55f787c2d7", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_test_report.md": "dcaf42e4472f1270ac6e80b601c3ca0ee0687ee75b04fb1b16f603756883251d", - "specs/archive/010-documentation-accuracy-verification/phase9-findings.md": "f02bef81dbbd6543fd10ac30894843a9214d9c2b29051c2578d8475fcc1ca761", - "specs/archive/010-documentation-accuracy-verification/plan.md": "ba76026ade27b1a6f516650b6cadf9d9c7c564bb9a6777be8661f01462cf3259", - "specs/archive/010-documentation-accuracy-verification/research.md": "05193c3ec5851bd78f15d638ec61eb9b57933304d2a7efc575c711b4481f2a4a", - "specs/archive/010-documentation-accuracy-verification/spec.md": "fda0f88cfa7000e6f24f3bd2092b479007b37be195fea14be937be42ef44d4ae", - "specs/archive/010-documentation-accuracy-verification/tasks.md": "2c0ce360442edfef04e271890f2d5978487c79a34a299d1b52a5e45277ebad35", - "specs/archive/010-documentation-accuracy-verification/verification-procedures.md": "e8247f69c2511b8c10609102bfd6c635db688a24f450d1ff038aad98f708a5ad", - "specs/archive/011-doctor-command-for/checklists/requirements.md": "766c45ea904c928a9962db1bdc2a38da742533f89daecc827d5d3076ddaf2f27", - "specs/archive/011-doctor-command-for/contracts/doctor-command.md": "d99e08a7822b85a6ec4cea8533dde91112ebd6c973418ff000aa66b78027f3eb", - "specs/archive/011-doctor-command-for/contracts/first-run-detection.md": "958ce1ec2facca6e237edda50f00f68c1703557f4902d2eaf0306be401513a78", - "specs/archive/011-doctor-command-for/data-model.md": "d3556e4d3f665df7285b7a63cae0d01b9616cd695b0253e5ef01e5d8b3bda7ba", - "specs/archive/011-doctor-command-for/plan.md": "50c777251120d3844083547b34eecd4cce35ffeffef5430083a972276b455416", - "specs/archive/011-doctor-command-for/quickstart.md": "d487f6fb48394ce3cbb092605ec232ab4062d1e6e190ab87819c7acfa898d974", - "specs/archive/011-doctor-command-for/research.md": "9499aa2e0cf3b97c1565f26ec4b8a0afdba19d709a6f2d19fa9ca2d6378c0c73", - "specs/archive/011-doctor-command-for/spec.md": "7d28992d8bb187fdfef0c734f7149dcdc79ec2f1147a6f0b131eeb611bf23809", - "specs/archive/011-doctor-command-for/tasks.md": "7b68f15a9e552193df455581cf52f634435351d915828c1f741b5eecb5b12cec", - "specs/archive/011-enhanced-usage-tracking/checklists/requirements.md": "d4777e57311181aa5087961704627195b26b6bceb0361031d62749265ac0ecc1", - "specs/archive/011-enhanced-usage-tracking/contracts/commands.md": "02f7c76742106c3d9624c1da558b4cec7bfabb59c9436772d83afa76e0647726", - "specs/archive/011-enhanced-usage-tracking/data-model.md": "0a17f7ff2d02ffc5c88058acebf23f510835ba24736ca8b2aaa34c0457daacb9", - "specs/archive/011-enhanced-usage-tracking/plan.md": "ef36f1782975e4c762a08284592d26bb403013c0ff770a18163478aa0618af04", - "specs/archive/011-enhanced-usage-tracking/quickstart.md": "495f2def63896d4d6f794b80b8ad679606324b22723425144b90297ccd177324", - "specs/archive/011-enhanced-usage-tracking/research.md": "f695d050a644d043aee491748fffd484c78410af476d3312bafc154a3593304b", - "specs/archive/011-enhanced-usage-tracking/spec.md": "263cb6ad2bc1e287813aca8eada7c4f5c34365c1d11c87b05bfac2bd0d30f8ad", - "specs/archive/011-enhanced-usage-tracking/tasks.md": "67250729cb876f30539e64157b6ff3b1bc52ebe355a701646b22608bb8a352e8", - "specs/archive/011-keychain-lifecycle-management/checklists/requirements.md": "4cd7b8b9a12253d2a7f4ec12d5a7e2c78b3ef1d85dc5e691536d2f2680adecd8", - "specs/archive/011-keychain-lifecycle-management/contracts/commands.md": "a74568f84f5cc474b398a8966ffde73ceab263f173a9e42eebb9520510d16683", - "specs/archive/011-keychain-lifecycle-management/data-model.md": "7d4dd16012fb1c28a24bb87dc9661019aceff9fe3dda7f661eaff9507439dc33", - "specs/archive/011-keychain-lifecycle-management/FOLLOW_UP.md": "761a0a2d3d0e257a0f9bf5da30680d09597e2ad4493fa39e169eea41f247a335", - "specs/archive/011-keychain-lifecycle-management/plan.md": "ebac0814cf3d238ac29cb63354ff64c729d227c4b2ab10a0f0cfaba9bf52ea6e", - "specs/archive/011-keychain-lifecycle-management/quickstart.md": "e763365077135d58aaaaf966254276a1b60bbf36fabb248913e72cf1b55cc93b", - "specs/archive/011-keychain-lifecycle-management/research.md": "901698cb066b7364b53e8e59a57371a07c355dbb27f641667409d265c87e57c4", - "specs/archive/011-keychain-lifecycle-management/spec.md": "dcd18e20e60d3f9f71abd8b760a77617d76535a3233e5255f99dba72f208db3c", - "specs/archive/011-keychain-lifecycle-management/tasks.md": "204d4c2572e77fd4d5fdd2bb16ffd9f5ebe4d8000916400da6c9d397c53d2775", - "specs/archive/012-vault-metadata-for/checklists/requirements.md": "6abaf4ba567331174c503b8f6480c3a6d766b71de4745854e9417656d9b4a9f3", - "specs/archive/012-vault-metadata-for/contracts/vault-metadata-schema.json": "f373760db88ea988ad88532c9c690f0714c93613402ec21a33565ec8950a2dad", - "specs/archive/012-vault-metadata-for/data-model.md": "bb7af1b0e5f57d01dc43664007279dbbe1ebd9575f3d5b2c352c23aec879b96b", - "specs/archive/012-vault-metadata-for/plan.md": "9f3049e89071f47a0df5e1b7d3348fa8e8209e62a0feae02a4f81fc1ef71dc2d", - "specs/archive/012-vault-metadata-for/quickstart.md": "9ef9a5255ec0d10b987fd86650b58c51c0eea0a562ad8a222bd5c31322cd1996", - "specs/archive/012-vault-metadata-for/research.md": "4f9e314a2a89c34f0365f856045e36220881f760e2498e8c086a6db45be996a4", - "specs/archive/012-vault-metadata-for/spec.md": "9e1ba54adbe86b4af5ef0206593bbbbb0d1ab704db2f2382f40b02a0c9ccce99", - "specs/archive/012-vault-metadata-for/tasks.md": "7550706a28c4d4513d80487535158cde87475197e8e08a28107de17ec711a90f", - "test/atomic_save_test.go": "8899156e6846e158b0efd43b7891d6ce82bdeba7f6a817661d48af126b642658", - "test/doctor_test.go": "bbf46a79e7ac507a3ed800ae317afe9dc4b8166f1bef76e27c523dafa7922b68", - "test/firstrun_test.go": "605432d1fc944dbe760448acab1f9b9b1875b13dda908783db78e37b2dcff58a", - "test/integration_test.go": "800dd5c3b91d017005dcfa018e5a1caaf80249f51f168404d5e465dfffcb62bb", - "test/keychain_enable_test.go": "46bba293329a73ca81b4fddcde745ad0c9c253cf2dd143440fd233fd627980ec", - "test/keychain_integration_test.go": "da45de629956b779b6de54b55808f1dbbac5d830fd86c58b0813be83ec819345", - "test/keychain_status_test.go": "35c4e9db5f6171be10e1c9e6c3b92665e2856a6277495807b0e223a67e1fa4d1", - "test/list_test.go": "73f30bf8af6e4f56f1d584c851fea4565f6245121ae82a26e6910fdd6b4517dd", - "test/README.md": "d6c80a3e2e95b22e40d00ce7ace5edb084c43c8415788ccb4c9c2fec8511a99d", - "test/recovery_disabled_test.go": "2513ceadd6049a8547c9f7a7995da2d8a34cb1cb1fc647298059b98e9d53af6a", - "test/recovery_init_test.go": "df5541829fb0e72abe038a69f9597cbfc58e23fac28ead638b7ea4d351a88bd1", - "test/recovery_passphrase_test.go": "718c6ee6733e94cc90edf73ac6184443f19348017d721fb0a1f8b50061a6fc4d", - "test/recovery_skip_verify_test.go": "770e2188155f9def4c151e863e7d0ae976baf026deb4037ec4658b82b4d79f60", - "test/recovery_test.go": "c658eac1fa3410e15b993b5224c83646af67ea847dc7fdb87dbe172417e073ec", - "test/setup-tview-test-data.bat": "050e42da469667b7c03a8a8b9a9a990c87b7a6e012a9b8bf6019ccfb4f8593a2", - "test/setup-tview-test-data.sh": "a189685772e83a96de1476e9c4c57a294a65fb73951a644ccfaf0ff9f9656b22", - "test/test_helpers.go": "96e0ee582d79f203f3d56335569e03e9f91eae5d50dd20c5d18d6d83c5a4ecea", - "test/tui_integration_test.go": "8116e2cfc34a384fe379f1973a5caaac4faaea61d5b18dfb058cb6f086d270cc", - "test/unit/config/cli_test.go": "6bfd2de12107a248ee0b15098691a9f10b51e6b4cd01dd6ad25979681af3a260", - "test/unit/config/fixtures/empty.yml": "1f377baee2cd862654ece6ce4e73e4cfb159ead81325426da7e6a90bc82eaedd", - "test/unit/config/fixtures/invalid_conflict.yml": "8653b33df3dd1b4baccdeea395fa1c4a6d0336a4101b37fccea2c4e699605895", - "test/unit/config/fixtures/invalid_key_format.yml": "cd0c2921c5617fca031fa8fdc73ab906f7e2e703979665ab737a5ce47d1ffab0", - "test/unit/config/fixtures/invalid_terminal_size.yml": "6b5ed881a807489f9d237316e1fbde7c1ac6c104a1b7d0d035aa940f2c8aa27b", - "test/unit/config/fixtures/invalid_unknown_action.yml": "8ba5216a6be23e14932ef6319d82e47ea73bd35a317bcb0079b014c3a3cf3aff", - "test/unit/config/fixtures/partial.yml": "f3602cd2f360d7d23ddaac3992ca72d6c673a9afbcb78290ebad5935f68fb5c7", - "test/unit/config/fixtures/valid_custom.yml": "8878fa1d6006e4fd14aeabc08eef590b152f1ac75cc8f03c8c8490eda5e5ef78", - "test/unit/config/fixtures/valid_full.yml": "703ee00474fd76530f9a167b42afb9585ad163381fda0186827a7f3895ec93a1", - "test/unit/config/fixtures/valid_minimal.yml": "72490875a6d2a7cf43bc97ce88336a7b5766ed7217f72c24dabcc55c741814b2", - "test/unit/config/fixtures/valid_vim_style.yml": "591dbba4b17f77277bf2447187ceeb226036909ca138842f7f4fc3365f278e05", - "test/unit/config/validation_test.go": "cf78b364e4bc29bede1186c76bc10ca156fde5d16f9fcdf859e7c000ff739684", - "test/unit/recovery/audit_test.go": "b0a2ba2869615926898ea80ec8ef1a3d9c1194cfda0a58eb4e4c44cf7181339b", - "test/unit/recovery/bip39_compat_test.go": "5f1403a5afed270c5b80de41c619d031349f3d4b0657be0c4495dcd5ae4a822a", - "test/unit/recovery/challenge_test.go": "64e0a72e2ad28a04e5a6b251be59c9452066731af4e3f4844bd3bf2eaf776d51", - "test/unit/recovery/memory_test.go": "007057986b6926c47318ecc0c14e96f848fc149615bac53b453936ca60d96ae2", - "test/unit/recovery/metadata_size_test.go": "aa3107cf4f19ef575fb7709fc0b7b7117665db42f11a7f1b5391159a60b3bca0", - "test/unit/recovery/mnemonic_test.go": "1905bd1447fbfb0a44dc9fb7804dbf1fe76189a09fceb1a599c25607f9bd56c0", - "test/unit/recovery/recovery_test.go": "4b78990be40ebdde302faa9a2309b01effb778b90b4c3ba11500e622a4ea2e73", - "test/unit/security/clipboard_test.go": "7295f991acca5967b635f492f99bf783efbb23d0a0bc093e5d0491d047332c38", - "test/unit/security/input_test.go": "cb9e1da709c8ec32edc0a25df9c1287a26877f88ac7e30bcccb195a67db46e6a", - "test/unit/security/memory_test.go": "677dc32bbb25c83b3b881a42fb7f1d688266509130c00ed8433667d59f08c269", - "test/usage_test.go": "b5e723e7d839534de4514c5e1a0781aa0faadf4a1a58cb5fb4e6533c6d460bc1", - "test/vault_backup_error_test.go": "8fb2d2fc507a5990a96c686b1207f6c591b3d737f12c7a3fc960fbf2900704e9", - "test/vault_backup_info_test.go": "117ffd8d3dc34d215e6695b6be1cf7c0c509ab56b8a550ac6564d7313e59c472", - "test/vault_backup_integration_test.go": "6dd189c28e297a24725c3d0ae31e211c1e4f43ea22c304c541931022d043c734", - "test/vault_backup_output_test.go": "cc81eafa4a43f04b335f3982ba635b2e5226bd26734a32f8c2255dce6421187a", - "test/vault_backup_performance_test.go": "f3317b907e682f1edccf4b87e047050061e60c09a2e8a0955d7d7a33a5fb319f", - "test/vault_backup_platform_test.go": "9e38a2729b705d4981e5de3d7a8ae296df0924f5327cdac0c164b0f26bf7734d", - "test/vault_metadata_test.go": "f56924fd9fdbe3c82e38bcb5cc35dce197a0e69f0cebc170b4f9de44c59831d6", - "test/vault_remove_test.go": "94f52716b9fd8961e892bb1ebad6c24dc7cf112b89a4880b9fda130d83b271d3" - } -} \ No newline at end of file From d28018c5286746e2538ebed3fb2608f26ce7071b Mon Sep 17 00:00:00 2001 From: Ari Date: Fri, 28 Nov 2025 23:15:50 -0500 Subject: [PATCH 05/19] docs: configure doc-manager for documentation lifecycle management - Initialize doc-manager with Hugo/Hextra platform detection - Configure source tracking (cmd/, internal/) and docs path (docs/) - Create baselines: repo checksums, code symbols, dependencies - Set up gitignore integration and Go language detection - Establish documentation mappings for CLI, API, config, dependencies, infrastructure Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager.yml | 94 + .doc-manager/dependencies.json | 3454 +++++++++++++++++++++++ .doc-manager/memory/doc-conventions.yml | 107 + .doc-manager/memory/repo-baseline.json | 349 +++ 4 files changed, 4004 insertions(+) create mode 100644 .doc-manager.yml create mode 100644 .doc-manager/dependencies.json create mode 100644 .doc-manager/memory/doc-conventions.yml create mode 100644 .doc-manager/memory/repo-baseline.json diff --git a/.doc-manager.yml b/.doc-manager.yml new file mode 100644 index 00000000..074c1897 --- /dev/null +++ b/.doc-manager.yml @@ -0,0 +1,94 @@ +platform: hugo +exclude: +- '*.pb.go' +- '*_test.go' +- vendor/* +- test/* +sources: +- cmd +- internal +docs_path: docs +use_gitignore: true +doc_mappings: + cli: docs/reference/command-reference.md + api: docs/reference/api.md + config: docs/reference/configuration.md + dependency: docs/getting-started/installation.md + infrastructure: docs/development/ci-cd.md +metadata: + language: Go + created: '2025-11-28T23:13:03.879609' + version: 1.0.0 +include_root_readme: false + +# ============================================================================ +# Configuration Guide & Examples +# ============================================================================ + +# Exclude Patterns +# ---------------- +# Use glob patterns to exclude files from documentation tracking. +# Examples: +# exclude: +# - "**/node_modules/**" # Exclude all node_modules directories +# - "**/*.pyc" # Exclude Python bytecode files +# - "**/dist/**" # Exclude build artifacts +# - "**/.git/**" # Exclude git directory +# - "**/venv/**" # Exclude Python virtual environments +# - "**/__pycache__/**" # Exclude Python cache + +# Source Files (Glob Patterns) +# ----------------------------- +# Glob patterns to specify which source files to track. +# IMPORTANT: Use glob patterns (e.g., 'src/**/*.py'), not just directory names. +# Examples: +# sources: +# - "src/**/*.py" # All Python files in src/ +# - "lib/**/*.js" # All JavaScript files in lib/ +# - "packages/core/**/*.ts" # TypeScript files in packages/core/ +# - "**/*.go" # All Go files in project + +# Documentation Path +# ------------------- +# Path to documentation directory (relative to project root). +# Common values: docs, doc, documentation, website/docs + +# Platform +# -------- +# Documentation platform: mkdocs, sphinx, hugo, docusaurus, etc. +# Set to 'unknown' if not using a specific platform. + +# Include Root README +# ------------------- +# Set to true to include the root README.md in documentation operations. +# When enabled, validation, quality assessment, and change detection +# will include the root README.md alongside docs in the docs/ directory. +# Default: false (backwards compatible) + +# Use Gitignore +# ------------- +# Set to true to automatically exclude files based on .gitignore patterns. +# When enabled, files ignored by git will also be excluded from doc tracking. +# Priority: user excludes > .gitignore > built-in defaults +# Default: false (opt-in feature) +# Example: +# use_gitignore: true +# exclude: # Additional patterns beyond .gitignore +# - "specs/**" + +# Documentation Path Mappings +# --------------------------- +# Map change categories to documentation file paths. +# Supports non-standard layouts (documentation/, wiki/, _docs/, etc.). +# When not configured, falls back to default paths in docs/. +# Example: +# doc_mappings: +# cli: 'docs/reference/command-reference.md' +# api: 'docs/reference/api.md' +# config: 'docs/reference/configuration.md' +# dependency: 'docs/getting-started/installation.md' +# infrastructure: 'docs/development/ci-cd.md' +# Non-standard layout example: +# doc_mappings: +# cli: 'documentation/commands.md' # Uses documentation/ instead of docs/ +# api: 'wiki/API-Reference.md' # Uses wiki/ directory diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json new file mode 100644 index 00000000..b9fad34c --- /dev/null +++ b/.doc-manager/dependencies.json @@ -0,0 +1,3454 @@ +{ + "generated_at": "2025-11-28T23:13:06.481603", + "doc_to_code": { + "01-getting-started/manual-install.md": [], + "01-getting-started/quick-install.md": [], + "01-getting-started/quick-start.md": [], + "02-guides/backup-restore.md": [], + "02-guides/basic-workflows.md": [], + "02-guides/keychain-setup.md": [], + "02-guides/recovery-phrase.md": [], + "02-guides/scripting-guide.md": [], + "02-guides/tui-guide.md": [], + "02-guides/usage-tracking.md": [], + "03-reference/_index.md": [], + "03-reference/command-reference.md": [], + "03-reference/configuration.md": [], + "03-reference/known-limitations.md": [], + "03-reference/migration.md": [], + "03-reference/security-architecture.md": [], + "04-troubleshooting/faq.md": [], + "04-troubleshooting/installation.md": [], + "04-troubleshooting/keychain.md": [], + "04-troubleshooting/tui.md": [], + "04-troubleshooting/vault.md": [], + "05-operations/health-checks.md": [], + "05-operations/security-operations.md": [], + "06-development/branch-workflow.md": [], + "06-development/ci-cd.md": [], + "06-development/contributing.md": [], + "06-development/documentation-lifecycle.md": [], + "06-development/homebrew.md": [], + "06-development/release.md": [], + "06-development/scoop.md": [], + "_index.md": [], + "README.md": [] + }, + "code_to_doc": {}, + "unmatched_references": { + "checksums.txt": [ + "01-getting-started/manual-install.md", + "06-development/scoop.md" + ], + "pass-cli": [ + "01-getting-started/manual-install.md", + "02-guides/tui-guide.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "04-troubleshooting/tui.md", + "06-development/homebrew.md" + ], + "explicit": [ + "01-getting-started/manual-install.md", + "02-guides/tui-guide.md" + ], + "pass-cli version": [ + "01-getting-started/manual-install.md", + "01-getting-started/quick-install.md", + "01-getting-started/quick-start.md", + "03-reference/command-reference.md", + "04-troubleshooting/installation.md", + "05-operations/security-operations.md", + "06-development/homebrew.md", + "06-development/scoop.md" + ], + "pass-cli init": [ + "01-getting-started/manual-install.md", + "01-getting-started/quick-start.md", + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "03-reference/security-architecture.md", + "04-troubleshooting/installation.md", + "04-troubleshooting/keychain.md", + "04-troubleshooting/vault.md", + "05-operations/health-checks.md", + "05-operations/security-operations.md" + ], + "pass-cli add test # Add a test credential": [ + "01-getting-started/manual-install.md" + ], + "pass-cli get test # Retrieve it": [ + "01-getting-started/manual-install.md" + ], + "pass-cli delete test": [ + "01-getting-started/manual-install.md" + ], + "vault_path": [ + "01-getting-started/quick-start.md", + "02-guides/scripting-guide.md", + "03-reference/configuration.md", + "03-reference/migration.md", + "05-operations/health-checks.md" + ], + "pass-cli list": [ + "01-getting-started/quick-start.md", + "02-guides/basic-workflows.md", + "02-guides/scripting-guide.md", + "02-guides/usage-tracking.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "04-troubleshooting/faq.md", + "04-troubleshooting/installation.md", + "04-troubleshooting/tui.md", + "04-troubleshooting/vault.md", + "05-operations/security-operations.md" + ], + "pass-cli add github": [ + "01-getting-started/quick-start.md", + "02-guides/backup-restore.md", + "02-guides/basic-workflows.md", + "03-reference/command-reference.md", + "03-reference/migration.md" + ], + "vault-requiring": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "init": [ + "01-getting-started/quick-start.md", + "06-development/contributing.md" + ], + "pass-cli get github": [ + "01-getting-started/quick-start.md", + "02-guides/basic-workflows.md", + "02-guides/scripting-guide.md", + "02-guides/tui-guide.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "04-troubleshooting/tui.md" + ], + "vault.enc.backup": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md", + "03-reference/security-architecture.md", + "04-troubleshooting/vault.md" + ], + "pass-cli vault backup info": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "pass-cli vault backup create": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "pass-cli doctor": [ + "02-guides/backup-restore.md", + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md", + "05-operations/health-checks.md" + ], + "restore": [ + "02-guides/backup-restore.md" + ], + "info": [ + "02-guides/backup-restore.md" + ], + "pass-cli vault backup restore": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "pass-cli generate": [ + "02-guides/basic-workflows.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "05-operations/security-operations.md" + ], + "pass-cli generate --length": [ + "02-guides/basic-workflows.md" + ], + "pass-cli add github -u": [ + "02-guides/basic-workflows.md" + ], + "pass-cli update github --generate": [ + "02-guides/basic-workflows.md" + ], + "pass-cli update github --generate --gen-length": [ + "02-guides/basic-workflows.md" + ], + "pass-cli keychain enable": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md" + ], + "pass-cli keychain status": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md" + ], + "pass-cli get github --json": [ + "02-guides/basic-workflows.md" + ], + "pass-cli update github": [ + "02-guides/basic-workflows.md", + "03-reference/command-reference.md" + ], + "pass-cli delete github": [ + "02-guides/basic-workflows.md", + "03-reference/command-reference.md" + ], + "pass-cli tui # Opens directly, no password prompt": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md" + ], + "use": [ + "02-guides/keychain-setup.md" + ], + "recovery": [ + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md" + ], + "pass-cli change-password": [ + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md", + "03-reference/security-architecture.md", + "04-troubleshooting/faq.md", + "04-troubleshooting/vault.md" + ], + "in": [ + "02-guides/scripting-guide.md" + ], + "pass-cli add service": [ + "02-guides/scripting-guide.md" + ], + "pass-cli update testservice": [ + "02-guides/scripting-guide.md" + ], + "Tab": [ + "02-guides/tui-guide.md" + ], + "Enter": [ + "02-guides/tui-guide.md" + ], + "Esc": [ + "02-guides/tui-guide.md", + "04-troubleshooting/tui.md" + ], + "pass-cli get": [ + "02-guides/tui-guide.md", + "03-reference/command-reference.md", + "04-troubleshooting/tui.md" + ], + "detail_position": [ + "02-guides/tui-guide.md" + ], + "detail_auto_threshold": [ + "02-guides/tui-guide.md" + ], + "no": [ + "02-guides/tui-guide.md" + ], + "pass-cli # Opens interactive interface": [ + "02-guides/tui-guide.md" + ], + "pass-cli list # Outputs credential table to stdout": [ + "02-guides/tui-guide.md" + ], + "pass-cli add newcred # Interactive prompts for credential data": [ + "02-guides/tui-guide.md" + ], + "pass-cli list --by-project": [ + "02-guides/usage-tracking.md" + ], + "pass-cli get testservice": [ + "02-guides/usage-tracking.md" + ], + "pass-cli usage github": [ + "02-guides/usage-tracking.md", + "03-reference/command-reference.md" + ], + "pass-cli usage aws-prod": [ + "02-guides/usage-tracking.md" + ], + "cli": [ + "03-reference/_index.md" + ], + "MyPassword": [ + "03-reference/command-reference.md" + ], + "pass-cli change-password --recover": [ + "03-reference/command-reference.md", + "03-reference/migration.md", + "03-reference/security-architecture.md", + "04-troubleshooting/vault.md" + ], + "EDITOR": [ + "03-reference/command-reference.md" + ], + "pass-cli init --enable-audit": [ + "03-reference/command-reference.md" + ], + "pass-cli get github --quiet": [ + "03-reference/command-reference.md" + ], + "pass-cli get github --field": [ + "03-reference/command-reference.md" + ], + "any": [ + "03-reference/command-reference.md" + ], + "each": [ + "03-reference/command-reference.md" + ], + "this": [ + "03-reference/command-reference.md" + ], + "by": [ + "03-reference/command-reference.md" + ], + "get": [ + "03-reference/command-reference.md" + ], + "windows": [ + "03-reference/command-reference.md" + ], + "pass-cli verify-audit": [ + "03-reference/command-reference.md", + "03-reference/migration.md", + "03-reference/security-architecture.md" + ], + "pass-cli add [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli add github \\": [ + "03-reference/command-reference.md" + ], + "pass-cli get [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli list [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli update [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli update github \\": [ + "03-reference/command-reference.md" + ], + "pass-cli delete [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli change-password [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli generate [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli version [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli usage [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli usage aws": [ + "03-reference/command-reference.md" + ], + "pass-cli usage postgres": [ + "03-reference/command-reference.md" + ], + "pass-cli usage heroku": [ + "03-reference/command-reference.md" + ], + "pass-cli usage redis": [ + "03-reference/command-reference.md" + ], + "pass-cli config ": [ + "03-reference/command-reference.md" + ], + "pass-cli config init": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli config edit": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli config validate": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli config reset [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli config reset": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli keychain ": [ + "03-reference/command-reference.md" + ], + "pass-cli keychain enable [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli keychain status [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault ": [ + "03-reference/command-reference.md" + ], + "pass-cli vault remove [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault remove /path/to/vault.enc": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup ": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup create [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup restore [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup info [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli verify-audit [audit-log-path]": [ + "03-reference/command-reference.md" + ], + "pass-cli verify-audit /path/to/audit.log": [ + "03-reference/command-reference.md" + ], + "pass-cli help": [ + "03-reference/command-reference.md" + ], + "add_credential": [ + "03-reference/configuration.md" + ], + "edit_credential": [ + "03-reference/configuration.md" + ], + "delete_credential": [ + "03-reference/configuration.md" + ], + "toggle_detail": [ + "03-reference/configuration.md" + ], + "toggle_sidebar": [ + "03-reference/configuration.md" + ], + "InputField": [ + "03-reference/known-limitations.md" + ], + "pass-cli init # CLI mode": [ + "03-reference/known-limitations.md" + ], + "pass-cli # TUI mode": [ + "03-reference/known-limitations.md" + ], + "pass-cli migrate": [ + "03-reference/migration.md" + ], + "every": [ + "03-reference/migration.md" + ], + "migration": [ + "03-reference/migration.md" + ], + "planned": [ + "03-reference/migration.md" + ], + "pass-cli add service1": [ + "03-reference/migration.md" + ], + "pass-cli add service2": [ + "03-reference/migration.md" + ], + "pass-cli generate # Copy generated password": [ + "03-reference/migration.md" + ], + "pass-cli get service1": [ + "03-reference/migration.md" + ], + "pass-cli get oldservice": [ + "03-reference/migration.md" + ], + "pass-cli generate # Automatically meets policy requirements": [ + "03-reference/migration.md" + ], + "CryptGenRandom": [ + "03-reference/security-architecture.md" + ], + "vault.enc": [ + "03-reference/security-architecture.md", + "04-troubleshooting/vault.md" + ], + "change-password": [ + "04-troubleshooting/faq.md" + ], + "Backspace": [ + "04-troubleshooting/tui.md" + ], + "of": [ + "04-troubleshooting/tui.md" + ], + "pass-cli tui": [ + "04-troubleshooting/tui.md" + ], + "pass-cli # No arguments": [ + "04-troubleshooting/tui.md" + ], + "pass-cli list # This is CLI mode": [ + "04-troubleshooting/tui.md" + ], + "doctor": [ + "05-operations/health-checks.md" + ], + "complete": [ + "05-operations/health-checks.md", + "_index.md", + "README.md" + ], + "pass-cli doctor [flags]": [ + "05-operations/health-checks.md" + ], + "pass-cli doctor # Show details": [ + "05-operations/health-checks.md" + ], + "pass-cli update service": [ + "05-operations/security-operations.md" + ], + "pass-cli get service --json": [ + "05-operations/security-operations.md" + ], + "pass-cli delete old-service": [ + "05-operations/security-operations.md" + ], + "Lint": [ + "06-development/branch-workflow.md" + ], + "Build": [ + "06-development/branch-workflow.md" + ], + "common": [ + "06-development/branch-workflow.md", + "06-development/contributing.md" + ], + "contents": [ + "06-development/ci-cd.md" + ], + "packages": [ + "06-development/ci-cd.md" + ], + "cobra": [ + "06-development/contributing.md" + ], + "root": [ + "06-development/contributing.md" + ], + "add": [ + "06-development/contributing.md" + ], + "docs": [ + "06-development/documentation-lifecycle.md" + ], + "pass-cli --help": [ + "06-development/scoop.md" + ] + }, + "reference_to_doc": { + "checksums.txt": [ + "01-getting-started/manual-install.md", + "06-development/scoop.md" + ], + "grep": [ + "01-getting-started/manual-install.md" + ], + "pass-cli": [ + "01-getting-started/manual-install.md", + "02-guides/tui-guide.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "04-troubleshooting/tui.md", + "06-development/homebrew.md" + ], + "explicit": [ + "01-getting-started/manual-install.md", + "02-guides/tui-guide.md" + ], + "pass-cli version": [ + "01-getting-started/manual-install.md", + "01-getting-started/quick-install.md", + "01-getting-started/quick-start.md", + "03-reference/command-reference.md", + "04-troubleshooting/installation.md", + "05-operations/security-operations.md", + "06-development/homebrew.md", + "06-development/scoop.md" + ], + "pass-cli init": [ + "01-getting-started/manual-install.md", + "01-getting-started/quick-start.md", + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "03-reference/security-architecture.md", + "04-troubleshooting/installation.md", + "04-troubleshooting/keychain.md", + "04-troubleshooting/vault.md", + "05-operations/health-checks.md", + "05-operations/security-operations.md" + ], + "pass-cli add test # Add a test credential": [ + "01-getting-started/manual-install.md" + ], + "pass-cli get test # Retrieve it": [ + "01-getting-started/manual-install.md" + ], + "pass-cli delete test": [ + "01-getting-started/manual-install.md" + ], + "add": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md", + "06-development/contributing.md" + ], + "get": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "list": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "update": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "delete": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "vault_path": [ + "01-getting-started/quick-start.md", + "02-guides/scripting-guide.md", + "03-reference/configuration.md", + "03-reference/migration.md", + "05-operations/health-checks.md" + ], + "version": [ + "01-getting-started/quick-start.md" + ], + "doctor": [ + "01-getting-started/quick-start.md", + "05-operations/health-checks.md" + ], + "help": [ + "01-getting-started/quick-start.md", + "03-reference/configuration.md" + ], + "init": [ + "01-getting-started/quick-start.md", + "06-development/contributing.md" + ], + "pass-cli list": [ + "01-getting-started/quick-start.md", + "02-guides/basic-workflows.md", + "02-guides/scripting-guide.md", + "02-guides/usage-tracking.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "04-troubleshooting/faq.md", + "04-troubleshooting/installation.md", + "04-troubleshooting/tui.md", + "04-troubleshooting/vault.md", + "05-operations/security-operations.md" + ], + "echo": [ + "01-getting-started/quick-start.md" + ], + "pass-cli add github": [ + "01-getting-started/quick-start.md", + "02-guides/backup-restore.md", + "02-guides/basic-workflows.md", + "03-reference/command-reference.md", + "03-reference/migration.md" + ], + "vault-requiring": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "pass-cli get github": [ + "01-getting-started/quick-start.md", + "02-guides/basic-workflows.md", + "02-guides/scripting-guide.md", + "02-guides/tui-guide.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "04-troubleshooting/tui.md" + ], + "vault.enc.backup": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md", + "03-reference/security-architecture.md", + "04-troubleshooting/vault.md" + ], + "info": [ + "02-guides/backup-restore.md" + ], + "pass-cli vault backup info": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "pass-cli vault backup create": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "pass-cli doctor": [ + "02-guides/backup-restore.md", + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md", + "05-operations/health-checks.md" + ], + "restore": [ + "02-guides/backup-restore.md" + ], + "pass-cli vault backup restore": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "secret-tool clear service pass-cli": [ + "02-guides/basic-workflows.md" + ], + "jq": [ + "02-guides/basic-workflows.md", + "05-operations/health-checks.md" + ], + "pass-cli generate": [ + "02-guides/basic-workflows.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "05-operations/security-operations.md" + ], + "pass-cli generate --length": [ + "02-guides/basic-workflows.md" + ], + "pass-cli add github -u": [ + "02-guides/basic-workflows.md" + ], + "pass-cli update github --generate": [ + "02-guides/basic-workflows.md" + ], + "pass-cli update github --generate --gen-length": [ + "02-guides/basic-workflows.md" + ], + "pass-cli keychain enable": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md" + ], + "pass-cli keychain status": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md" + ], + "pass-cli get github --json": [ + "02-guides/basic-workflows.md" + ], + "pass-cli update github": [ + "02-guides/basic-workflows.md", + "03-reference/command-reference.md" + ], + "pass-cli delete github": [ + "02-guides/basic-workflows.md", + "03-reference/command-reference.md" + ], + "pass-cli tui # Opens directly, no password prompt": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md" + ], + "use": [ + "02-guides/keychain-setup.md" + ], + "change-password --recover": [ + "02-guides/recovery-phrase.md" + ], + "recovery": [ + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md" + ], + "pass-cli change-password": [ + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md", + "03-reference/security-architecture.md", + "04-troubleshooting/faq.md", + "04-troubleshooting/vault.md" + ], + "in": [ + "02-guides/scripting-guide.md" + ], + "pass-cli add service": [ + "02-guides/scripting-guide.md" + ], + "pass-cli update testservice": [ + "02-guides/scripting-guide.md" + ], + "Tab": [ + "02-guides/tui-guide.md" + ], + "Enter": [ + "02-guides/tui-guide.md" + ], + "Esc": [ + "02-guides/tui-guide.md", + "04-troubleshooting/tui.md" + ], + "pass-cli get": [ + "02-guides/tui-guide.md", + "03-reference/command-reference.md", + "04-troubleshooting/tui.md" + ], + "detail_position": [ + "02-guides/tui-guide.md" + ], + "auto": [ + "02-guides/tui-guide.md" + ], + "right": [ + "02-guides/tui-guide.md" + ], + "bottom": [ + "02-guides/tui-guide.md" + ], + "detail_auto_threshold": [ + "02-guides/tui-guide.md" + ], + "no": [ + "02-guides/tui-guide.md" + ], + "pass-cli # Opens interactive interface": [ + "02-guides/tui-guide.md" + ], + "pass-cli list # Outputs credential table to stdout": [ + "02-guides/tui-guide.md" + ], + "pass-cli add newcred # Interactive prompts for credential data": [ + "02-guides/tui-guide.md" + ], + "pass-cli list --by-project": [ + "02-guides/usage-tracking.md" + ], + "pass-cli get testservice": [ + "02-guides/usage-tracking.md" + ], + "pass-cli usage github": [ + "02-guides/usage-tracking.md", + "03-reference/command-reference.md" + ], + "pass-cli usage aws-prod": [ + "02-guides/usage-tracking.md" + ], + "cli": [ + "03-reference/_index.md" + ], + "password123": [ + "03-reference/command-reference.md" + ], + "MyPassword": [ + "03-reference/command-reference.md" + ], + "pass-cli change-password --recover": [ + "03-reference/command-reference.md", + "03-reference/migration.md", + "03-reference/security-architecture.md", + "04-troubleshooting/vault.md" + ], + "username": [ + "03-reference/command-reference.md" + ], + "password": [ + "03-reference/command-reference.md" + ], + "url": [ + "03-reference/command-reference.md" + ], + "notes": [ + "03-reference/command-reference.md" + ], + "service": [ + "03-reference/command-reference.md" + ], + "created": [ + "03-reference/command-reference.md" + ], + "modified": [ + "03-reference/command-reference.md" + ], + "accessed": [ + "03-reference/command-reference.md" + ], + "gen": [ + "03-reference/command-reference.md" + ], + "pwd": [ + "03-reference/command-reference.md" + ], + "a-z": [ + "03-reference/command-reference.md" + ], + "table": [ + "03-reference/command-reference.md" + ], + "json": [ + "03-reference/command-reference.md" + ], + "simple": [ + "03-reference/command-reference.md" + ], + "config reset": [ + "03-reference/command-reference.md" + ], + "EDITOR": [ + "03-reference/command-reference.md" + ], + "audit-log-path": [ + "03-reference/command-reference.md" + ], + "pass-cli init --enable-audit": [ + "03-reference/command-reference.md" + ], + "pass-cli get github --quiet": [ + "03-reference/command-reference.md" + ], + "pass-cli get github --field": [ + "03-reference/command-reference.md" + ], + "any": [ + "03-reference/command-reference.md" + ], + "each": [ + "03-reference/command-reference.md" + ], + "this": [ + "03-reference/command-reference.md" + ], + "by": [ + "03-reference/command-reference.md" + ], + "windows": [ + "03-reference/command-reference.md" + ], + "pass-cli verify-audit": [ + "03-reference/command-reference.md", + "03-reference/migration.md", + "03-reference/security-architecture.md" + ], + "pass-cli add [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli add github \\": [ + "03-reference/command-reference.md" + ], + "pass-cli get [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli list [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli update [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli update github \\": [ + "03-reference/command-reference.md" + ], + "pass-cli delete [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli change-password [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli generate [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli version [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli usage [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli usage aws": [ + "03-reference/command-reference.md" + ], + "pass-cli usage postgres": [ + "03-reference/command-reference.md" + ], + "pass-cli usage heroku": [ + "03-reference/command-reference.md" + ], + "pass-cli usage redis": [ + "03-reference/command-reference.md" + ], + "pass-cli config ": [ + "03-reference/command-reference.md" + ], + "pass-cli config init": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli config edit": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli config validate": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli config reset [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli config reset": [ + "03-reference/command-reference.md", + "03-reference/configuration.md" + ], + "pass-cli keychain ": [ + "03-reference/command-reference.md" + ], + "pass-cli keychain enable [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli keychain status [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault ": [ + "03-reference/command-reference.md" + ], + "pass-cli vault remove [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault remove /path/to/vault.enc": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup ": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup create [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup restore [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli vault backup info [flags]": [ + "03-reference/command-reference.md" + ], + "pass-cli verify-audit [audit-log-path]": [ + "03-reference/command-reference.md" + ], + "pass-cli verify-audit /path/to/audit.log": [ + "03-reference/command-reference.md" + ], + "pass-cli help": [ + "03-reference/command-reference.md" + ], + "quit": [ + "03-reference/configuration.md" + ], + "add_credential": [ + "03-reference/configuration.md" + ], + "edit_credential": [ + "03-reference/configuration.md" + ], + "delete_credential": [ + "03-reference/configuration.md" + ], + "toggle_detail": [ + "03-reference/configuration.md" + ], + "toggle_sidebar": [ + "03-reference/configuration.md" + ], + "search": [ + "03-reference/configuration.md" + ], + "InputField": [ + "03-reference/known-limitations.md" + ], + "string": [ + "03-reference/known-limitations.md" + ], + "defer": [ + "03-reference/known-limitations.md" + ], + "pass-cli init # CLI mode": [ + "03-reference/known-limitations.md" + ], + "pass-cli # TUI mode": [ + "03-reference/known-limitations.md" + ], + "pass-cli migrate": [ + "03-reference/migration.md" + ], + "every": [ + "03-reference/migration.md" + ], + "migration": [ + "03-reference/migration.md" + ], + "planned": [ + "03-reference/migration.md" + ], + "pass-cli add service1": [ + "03-reference/migration.md" + ], + "pass-cli add service2": [ + "03-reference/migration.md" + ], + "pass-cli generate # Copy generated password": [ + "03-reference/migration.md" + ], + "pass-cli get service1": [ + "03-reference/migration.md" + ], + "pass-cli get oldservice": [ + "03-reference/migration.md" + ], + "pass-cli generate # Automatically meets policy requirements": [ + "03-reference/migration.md" + ], + "CryptGenRandom": [ + "03-reference/security-architecture.md" + ], + "fsync": [ + "03-reference/security-architecture.md" + ], + "vault.enc": [ + "03-reference/security-architecture.md", + "04-troubleshooting/vault.md" + ], + "change-password": [ + "04-troubleshooting/faq.md" + ], + "Backspace": [ + "04-troubleshooting/tui.md" + ], + "of": [ + "04-troubleshooting/tui.md" + ], + "pass-cli tui": [ + "04-troubleshooting/tui.md" + ], + "pass-cli # No arguments": [ + "04-troubleshooting/tui.md" + ], + "pass-cli list # This is CLI mode": [ + "04-troubleshooting/tui.md" + ], + "libsecret": [ + "05-operations/health-checks.md" + ], + "apt-get install libsecret-1-0": [ + "05-operations/health-checks.md" + ], + "keyring": [ + "05-operations/health-checks.md" + ], + "gnome-keyring": [ + "05-operations/health-checks.md" + ], + "complete": [ + "05-operations/health-checks.md", + "_index.md", + "README.md" + ], + "pass-cli doctor [flags]": [ + "05-operations/health-checks.md" + ], + "pass-cli doctor # Show details": [ + "05-operations/health-checks.md" + ], + "pass-cli update service": [ + "05-operations/security-operations.md" + ], + "pass-cli get service --json": [ + "05-operations/security-operations.md" + ], + "history -c": [ + "05-operations/security-operations.md" + ], + "pass-cli delete old-service": [ + "05-operations/security-operations.md" + ], + "main": [ + "06-development/branch-workflow.md", + "06-development/ci-cd.md" + ], + "Lint": [ + "06-development/branch-workflow.md" + ], + "Build": [ + "06-development/branch-workflow.md" + ], + ".github/workflows/release.yml": [ + "06-development/branch-workflow.md", + "06-development/release.md" + ], + ".github/workflows/ci.yml": [ + "06-development/branch-workflow.md" + ], + "common": [ + "06-development/branch-workflow.md", + "06-development/contributing.md" + ], + "ci.yml": [ + "06-development/ci-cd.md" + ], + "release.yml": [ + "06-development/ci-cd.md" + ], + ".github/dependabot.yml": [ + "06-development/ci-cd.md" + ], + "contents": [ + "06-development/ci-cd.md" + ], + "packages": [ + "06-development/ci-cd.md" + ], + "go vet": [ + "06-development/contributing.md" + ], + "gofmt": [ + "06-development/contributing.md" + ], + "cobra": [ + "06-development/contributing.md" + ], + "root": [ + "06-development/contributing.md" + ], + "git log --follow": [ + "06-development/documentation-lifecycle.md" + ], + "docs": [ + "06-development/documentation-lifecycle.md" + ], + "homebrew/pass-cli.rb": [ + "06-development/homebrew.md" + ], + "Formula/pass-cli.rb": [ + "06-development/homebrew.md" + ], + "latest": [ + "06-development/homebrew.md", + "06-development/scoop.md" + ], + "brew test pass-cli": [ + "06-development/homebrew.md" + ], + "update-docs-version.yml": [ + "06-development/release.md" + ], + "netgo": [ + "06-development/release.md" + ], + ".goreleaser.yml": [ + "06-development/release.md", + "06-development/scoop.md" + ], + "scoop/pass-cli.json": [ + "06-development/scoop.md" + ], + "bucket/pass-cli.json": [ + "06-development/scoop.md" + ], + "scoop hash": [ + "06-development/scoop.md" + ], + "scoop checkver pass-cli -u": [ + "06-development/scoop.md" + ], + "scoop checkver pass-cli": [ + "06-development/scoop.md" + ], + "pass-cli --help": [ + "06-development/scoop.md" + ] + }, + "all_references": { + "config_key": [ + { + "reference": "checksums.txt", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "vault_path", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "vault_path", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "detail_auto_threshold", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "detail_position", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "detail_auto_threshold", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "add_credential", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "edit_credential", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "delete_credential", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "toggle_detail", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "toggle_sidebar", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "vault_path", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "vault.enc", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "vault.enc", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "vault.enc", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "vault.enc", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "vault.enc", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "vault.enc.backup", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "vault_path", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "vault_path", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "contents", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": "contents", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": "packages", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": "docs", + "doc_file": "06-development/documentation-lifecycle.md" + }, + { + "reference": "docs", + "doc_file": "06-development/documentation-lifecycle.md" + }, + { + "reference": "checksums.txt", + "doc_file": "06-development/scoop.md" + } + ], + "command": [ + { + "reference": "grep", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli version", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli version", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli version", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli init", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli add test # Add a test credential", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli get test # Retrieve it", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli delete test", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "pass-cli version", + "doc_file": "01-getting-started/quick-install.md" + }, + { + "reference": "add", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "get", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "list", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "update", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "delete", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "version", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "doctor", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "help", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "init", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli list", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "echo", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli version", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli list", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli init", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli init", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli init", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli init", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "secret-tool clear service pass-cli", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "jq", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli generate --length", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli add github -u", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli add github -u", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli update github --generate", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli update github --generate --gen-length", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli get github --json", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli delete github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli tui # Opens directly, no password prompt", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides/basic-workflows.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli tui # Opens directly, no password prompt", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "change-password --recover", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli init", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli add service", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli update testservice", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "pass-cli", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli get", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "auto", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "right", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "bottom", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli # Opens interactive interface", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli list # Outputs credential table to stdout", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli add newcred # Interactive prompts for credential data", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "pass-cli list --by-project", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli get testservice", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli usage github", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli usage github", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli usage github", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli usage github", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli usage aws-prod", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli usage aws-prod", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "pass-cli list", + "doc_file": "02-guides/usage-tracking.md" + }, + { + "reference": "password123", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "username", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "password", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "url", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "notes", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "service", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "created", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "modified", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "accessed", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "gen", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pwd", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "a-z", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "table", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "table", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "json", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "simple", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "get", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "config reset", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "audit-log-path", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init --enable-audit", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "add", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "get", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "update", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "delete", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github --quiet", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github --field", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github \\", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github \\", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli add github \\", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github \\", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli update github \\", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli delete [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli delete github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli delete github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli delete github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli change-password [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli version [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli version", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli version", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli usage [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli usage github", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli usage aws", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli usage postgres", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli usage heroku", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli usage redis", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config ", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config edit", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config edit", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config validate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config validate", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config reset [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config reset", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli config reset", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli keychain ", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli keychain enable [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli keychain status [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault ", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault remove [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault remove /path/to/vault.enc", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault remove /path/to/vault.enc", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault remove /path/to/vault.enc", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup ", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup create [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup restore [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup info [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli verify-audit [audit-log-path]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli verify-audit /path/to/audit.log", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli version", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli help", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "quit", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "help", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "search", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "pass-cli config init", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "pass-cli config edit", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "pass-cli config validate", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "pass-cli config reset", + "doc_file": "03-reference/configuration.md" + }, + { + "reference": "string", + "doc_file": "03-reference/known-limitations.md" + }, + { + "reference": "defer", + "doc_file": "03-reference/known-limitations.md" + }, + { + "reference": "pass-cli init # CLI mode", + "doc_file": "03-reference/known-limitations.md" + }, + { + "reference": "pass-cli # TUI mode", + "doc_file": "03-reference/known-limitations.md" + }, + { + "reference": "pass-cli migrate", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli add service1", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli add service2", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli generate # Copy generated password", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli add service1", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli get service1", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli migrate", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli migrate", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli get oldservice", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli generate # Automatically meets policy requirements", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "fsync", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "pass-cli init", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "pass-cli verify-audit", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "change-password", + "doc_file": "04-troubleshooting/faq.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "04-troubleshooting/faq.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "04-troubleshooting/faq.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/faq.md" + }, + { + "reference": "pass-cli version", + "doc_file": "04-troubleshooting/installation.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/installation.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting/installation.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting/installation.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting/keychain.md" + }, + { + "reference": "pass-cli get", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli get", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli tui", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli # No arguments", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli list # This is CLI mode", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli init", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli list", + "doc_file": "04-troubleshooting/vault.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "libsecret", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "apt-get install libsecret-1-0", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "keyring", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "gnome-keyring", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "jq", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor [flags]", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor # Show details", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli update service", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli get service --json", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "history -c", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli list", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli delete old-service", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli init", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli list", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "pass-cli version", + "doc_file": "05-operations/security-operations.md" + }, + { + "reference": "main", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": "main", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": "main", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": "go vet", + "doc_file": "06-development/contributing.md" + }, + { + "reference": "gofmt", + "doc_file": "06-development/contributing.md" + }, + { + "reference": "git log --follow", + "doc_file": "06-development/documentation-lifecycle.md" + }, + { + "reference": "latest", + "doc_file": "06-development/homebrew.md" + }, + { + "reference": "latest", + "doc_file": "06-development/homebrew.md" + }, + { + "reference": "brew test pass-cli", + "doc_file": "06-development/homebrew.md" + }, + { + "reference": "pass-cli version", + "doc_file": "06-development/homebrew.md" + }, + { + "reference": "pass-cli", + "doc_file": "06-development/homebrew.md" + }, + { + "reference": "netgo", + "doc_file": "06-development/release.md" + }, + { + "reference": "latest", + "doc_file": "06-development/scoop.md" + }, + { + "reference": "latest", + "doc_file": "06-development/scoop.md" + }, + { + "reference": "scoop hash", + "doc_file": "06-development/scoop.md" + }, + { + "reference": "scoop checkver pass-cli -u", + "doc_file": "06-development/scoop.md" + }, + { + "reference": "scoop checkver pass-cli", + "doc_file": "06-development/scoop.md" + }, + { + "reference": "pass-cli version", + "doc_file": "06-development/scoop.md" + }, + { + "reference": "pass-cli --help", + "doc_file": "06-development/scoop.md" + } + ], + "semantic_command": [ + { + "reference": "explicit", + "doc_file": "01-getting-started/manual-install.md" + }, + { + "reference": "vault-requiring", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "init", + "doc_file": "01-getting-started/quick-start.md" + }, + { + "reference": "restore", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "info", + "doc_file": "02-guides/backup-restore.md" + }, + { + "reference": "use", + "doc_file": "02-guides/keychain-setup.md" + }, + { + "reference": "recovery", + "doc_file": "02-guides/recovery-phrase.md" + }, + { + "reference": "in", + "doc_file": "02-guides/scripting-guide.md" + }, + { + "reference": "no", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "explicit", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "cli", + "doc_file": "03-reference/_index.md" + }, + { + "reference": "any", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "recovery", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "each", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "this", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "by", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "vault-requiring", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "get", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "windows", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "every", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "migration", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "planned", + "doc_file": "03-reference/migration.md" + }, + { + "reference": "change-password", + "doc_file": "04-troubleshooting/faq.md" + }, + { + "reference": "of", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "doctor", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "complete", + "doc_file": "05-operations/health-checks.md" + }, + { + "reference": "common", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": "cobra", + "doc_file": "06-development/contributing.md" + }, + { + "reference": "root", + "doc_file": "06-development/contributing.md" + }, + { + "reference": "init", + "doc_file": "06-development/contributing.md" + }, + { + "reference": "add", + "doc_file": "06-development/contributing.md" + }, + { + "reference": "common", + "doc_file": "06-development/contributing.md" + }, + { + "reference": "complete", + "doc_file": "_index.md" + }, + { + "reference": "complete", + "doc_file": "README.md" + } + ], + "class": [ + { + "reference": "Tab", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "Enter", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "Tab", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "Esc", + "doc_file": "02-guides/tui-guide.md" + }, + { + "reference": "MyPassword", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "EDITOR", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "InputField", + "doc_file": "03-reference/known-limitations.md" + }, + { + "reference": "InputField", + "doc_file": "03-reference/known-limitations.md" + }, + { + "reference": "InputField", + "doc_file": "03-reference/known-limitations.md" + }, + { + "reference": "CryptGenRandom", + "doc_file": "03-reference/security-architecture.md" + }, + { + "reference": "Esc", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "Backspace", + "doc_file": "04-troubleshooting/tui.md" + }, + { + "reference": "Lint", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": "Build", + "doc_file": "06-development/branch-workflow.md" + } + ], + "file_path": [ + { + "reference": ".github/workflows/release.yml", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": ".github/workflows/ci.yml", + "doc_file": "06-development/branch-workflow.md" + }, + { + "reference": "ci.yml", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": "release.yml", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": ".github/dependabot.yml", + "doc_file": "06-development/ci-cd.md" + }, + { + "reference": "homebrew/pass-cli.rb", + "doc_file": "06-development/homebrew.md" + }, + { + "reference": "Formula/pass-cli.rb", + "doc_file": "06-development/homebrew.md" + }, + { + "reference": "update-docs-version.yml", + "doc_file": "06-development/release.md" + }, + { + "reference": ".github/workflows/release.yml", + "doc_file": "06-development/release.md" + }, + { + "reference": ".goreleaser.yml", + "doc_file": "06-development/release.md" + }, + { + "reference": "scoop/pass-cli.json", + "doc_file": "06-development/scoop.md" + }, + { + "reference": ".goreleaser.yml", + "doc_file": "06-development/scoop.md" + }, + { + "reference": "bucket/pass-cli.json", + "doc_file": "06-development/scoop.md" + } + ] + }, + "asset_to_docs": { + "https://img.shields.io/github/v/release/ari1110/pass-cli?label=Version": [ + "01-getting-started/quick-install.md", + "01-getting-started/quick-start.md", + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md", + "03-reference/known-limitations.md", + "03-reference/migration.md", + "03-reference/security-architecture.md", + "04-troubleshooting/installation.md", + "05-operations/health-checks.md", + "06-development/branch-workflow.md", + "06-development/ci-cd.md", + "06-development/contributing.md", + "06-development/documentation-lifecycle.md", + "06-development/homebrew.md", + "06-development/release.md", + "06-development/scoop.md", + "_index.md", + "README.md" + ], + "https://img.shields.io/github/last-commit/ari1110/pass-cli?path=docs&label=Last%20Updated": [ + "01-getting-started/quick-install.md", + "01-getting-started/quick-start.md", + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md", + "03-reference/known-limitations.md", + "03-reference/migration.md", + "03-reference/security-architecture.md", + "04-troubleshooting/installation.md", + "05-operations/health-checks.md", + "06-development/branch-workflow.md", + "06-development/ci-cd.md", + "06-development/contributing.md", + "06-development/documentation-lifecycle.md", + "06-development/homebrew.md", + "06-development/release.md", + "06-development/scoop.md", + "_index.md", + "README.md" + ] + } +} \ No newline at end of file diff --git a/.doc-manager/memory/doc-conventions.yml b/.doc-manager/memory/doc-conventions.yml new file mode 100644 index 00000000..e29f8427 --- /dev/null +++ b/.doc-manager/memory/doc-conventions.yml @@ -0,0 +1,107 @@ +# Documentation Conventions Configuration +# Generated by doc-manager +# +# This file defines documentation standards for your project. +# Edit these values to match your team's preferences. + +style: + headings: + # Heading case style: sentence_case | title_case | lower | upper + # Examples: + # sentence_case: "This is a heading" + # title_case: "This Is A Heading" + case: sentence_case + + # Enforce consistent heading case throughout project + consistency_required: true + + code: + # Format for inline code references: backticks | html + inline_format: backticks + + # Require language specification in code blocks (```python vs ```) + block_language_required: true + + voice: + # Grammatical person for documentation: first | second | third + # first: "We recommend...", second: "You should...", third: "Users should..." + person: second + + # Prefer active voice ("Click the button") over passive ("The button should be clicked") + active_voice_preferred: true + +structure: + # Require introductory paragraph before first heading + require_intro: true + + # Table of contents requirements + require_toc: + # Whether to require TOC + enabled: true + + # Generate TOC for docs longer than N words + min_length: 500 + + # Maximum heading depth (1-6, where 1 is #, 6 is ######) + max_heading_depth: 3 + + # Enforce strict heading hierarchy (no skipping levels: H1→H3 is invalid) + # Options: strict | relaxed + heading_hierarchy: strict + +quality: + sentences: + # Sentence length limits (in words) + max_length: 25 + min_length: 3 + + paragraphs: + # Maximum paragraph length (in words) + max_length: 150 + + links: + # Validate all links are reachable + validate_links: true + + images: + # All images must have descriptive alt text + require_alt_text: true + + code: + # Validate code syntax (expensive, requires TreeSitter) + validate_syntax: false + +# Project-specific terminology +terminology: + # Preferred terms (enforce consistent usage) + # Format: abbreviation_key: + # full_form: "Full Term Name" + # abbreviation: "ABBR" + # guidance: "Usage guidance" + preferred: {} + # Example: + # mcp: + # full_form: "Model Context Protocol" + # abbreviation: "MCP" + # guidance: "Spell out on first use, abbreviate after" + + # Words/phrases to avoid (flagged as warnings) + # Note: May produce false positives - review warnings manually + avoid: + - word: simply + reason: "Use specific descriptions instead" + exceptions: [] + + - word: just + reason: "Be precise about what you mean" + exceptions: ["just-in-time", "justify"] + + - word: easy + reason: "Describe specific effort required" + exceptions: [] + + - word: obviously + reason: "What's obvious to you may not be to readers" + exceptions: [] + +# Future enhancement: semantic_checking: true # Requires spaCy (optional) diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json new file mode 100644 index 00000000..90213e52 --- /dev/null +++ b/.doc-manager/memory/repo-baseline.json @@ -0,0 +1,349 @@ +{ + "repo_name": "pass-cli", + "description": "Repository for pass-cli", + "language": "Go", + "docs_exist": true, + "docs_path": "docs", + "metadata": { + "git_commit": "980af9d1a4464a7036bcb65876d33a11dde9f783", + "git_branch": "docs/review-with-doc-manager" + }, + "timestamp": "2025-11-28T23:13:06.181550", + "version": "1.0.0", + "file_count": 333, + "files": { + ".doc-manager.yml": "f2a333ecb9829ee6478f5fe190707babc43a1534a3047b3b2977045095e590cc", + ".github/dependabot.yml": "578b858b08141f08e00a144c35b208f32075d2f40305111a5d970e8d6ac9ef65", + ".github/workflows/ci.yml": "081a8464d550c347fa4af32c4666490d744aad2d9d945f36019c353a26f87a56", + ".github/workflows/docs-validation.yml": "259dff44c43e69dfa78cc3624bdfc956d5f1b895b2798e45e1677d1be86ba2f7", + ".github/workflows/pages.yml": "26a69d51de2e00b38fece64609190cbd9024732789542dd71e730acc783b9962", + ".github/workflows/pr-validation.yml": "7550573b5946b83748efd0294c7e2f076979a14f4a9a4b3adfa474bd5ba14d8f", + ".github/workflows/release.yml": "89d248b668e4d1c151b7c0b3cb04e8e311fb9f75fe4b066028749f71b9ec0cbb", + ".github/workflows/security-scan.yml": "be292d32d6f223052450ddf86a0a935002f8e41e29a5d46f5f05da39fb6ffea0", + ".gitignore": "dfa96d75bf0c48313b8567ae2313fef553925bd38ba9d73f47dd926c7aa5326d", + ".goreleaser.yml": "180c963b45edfebc6e6a1218e00e33953ec850270f4703595956ec9a2d324997", + ".markdownlint.json": "9b4b2ad4dd10efd42a4af14c5e6f0675b22ccc3eedd378d9075162cd692549ae", + "CHANGELOG.md": "d72447f51be5bf54e38a8802bf7db155b85c877555e7e74f07e117b99b91c638", + "CLAUDE.md": "2bcc51fedb86dc1c1b0b303dffade31cb68e8727403a94060d7631b5cb656116", + "cmd/add.go": "5bb7d5bbee88304fa8cdfe3c268baedd8805610030aa98740575fdb11983f11e", + "cmd/change_password.go": "8355659b5a9bf4693d81092b03ad7d936c6043207b97c4dcea02e7cbf0386e2f", + "cmd/config.go": "ea9810cf6f4dbcc93ffc53bfb34ce2dcb4d93a90e48b230ade4036c728cd1fad", + "cmd/delete.go": "135188b75f1360eefcc9473fe25fa252a2abff31a3a0247bed900763c589b480", + "cmd/doctor.go": "966dd049ce155ede7a8a9cd740fb9253bb1e05508a0d6417cd44a81845deb080", + "cmd/generate.go": "2e805f671aa139319aab02e4da538ad2dd87c2b91f0326dc31f5c8129953024b", + "cmd/get.go": "73613e26a3f32cd9c47eca02061dced441b5c462770d6e7a940d3a1d5986d321", + "cmd/helpers.go": "da94ca7963f179f16bc0bb0f9ea108868cde8973b6f77635b4bae8742a35ad79", + "cmd/init.go": "a17dbd98398e225d3071d1ee77c408c0fdce55899210a73553cead8d76729f05", + "cmd/keychain.go": "039c26a58d7d04c71ecdb7f257bc20e61b137697ce453026b8fe6fef411c43bb", + "cmd/keychain_enable.go": "4fe42263bf198f27aeb672d5b5e4ab7e61d0ab27182319dfb0597e46d0d1e83b", + "cmd/keychain_status.go": "d407c0e680323c5003dcddbd25f1ea4baa26497ff8281aa69b64dd1ab3ebd83b", + "cmd/list.go": "89da75775a8915a2150f4c6663dc12ae0677e01d116301cfcadfef7390cabade", + "cmd/root.go": "0098285b3013b3ac2978f8eed91a799d1af689693dc397479ba1e194db25a253", + "cmd/tui/app.go": "43eeb51b0b40a715b8476c0e97e4bc822d70791f5c857bff8c5d7354c058c457", + "cmd/tui/components/detail.go": "db5d898aba779de1ad007aa44ede9c1e0715e873ab6e384b4c042420141d2075", + "cmd/tui/components/forms.go": "f360218d34b6c9951a6ab3de2529089bb8cceb039e7559a0d0cc7d7877e04261", + "cmd/tui/components/sidebar.go": "f7991b7eddaa2b9e3c75ae80f61cde53f1518bafa9621397ec7924872f79893e", + "cmd/tui/components/statusbar.go": "1921a2c7b0b34122e4caf4514839c47dcc6438d6d863b07580db17cef900bfaf", + "cmd/tui/components/table.go": "285ef9846cf032efdb8b4b1c1d4199d0d3af0864a8d02c5a5fcfa484becdbf9e", + "cmd/tui/events/focus.go": "e2d6c4f035e4981646a9bc28a2b5fa097dc6b18d981ff860a40429033f6f7f79", + "cmd/tui/events/handlers.go": "9e7ef5f9b8ffb2ed0ee33bfc728d88b92b2685208d08c8892e4d15162aae5863", + "cmd/tui/layout/manager.go": "0e31721268f04f7e06854fba0e9b42c4ee8e727860f21173b2212da53bd7931c", + "cmd/tui/layout/pages.go": "21ee8b0987cd7dab996118281d47bc280b2a5e204ef523d1944fb368a9f8511a", + "cmd/tui/main.go": "ee842e04c166c95c71427f31fb379d5c95a41feaee12f82bee1e1cf9b5a38c3a", + "cmd/tui/models/navigation.go": "88e5a7903d63eea25200be42ee3e1967c46eb18e9519d4bff1751d58ab9be1b6", + "cmd/tui/models/search.go": "baf4867219d8f1a6d2851a25240ef00de14a961ece1ef91693f0afe9204a3b99", + "cmd/tui/models/state.go": "2dcff4b9218d00025b0ee7b3e2f876dd21b14ce34eef6f9ba77d4012e1e2ec59", + "cmd/tui/styles/theme.go": "5713de3928333c8161eabebd093f61cd8d1a92c504c10913f2fbdae07444e398", + "cmd/tui.go": "2c598900b4cc5be38f699ea21d13f18f1f296b181cce127f3dbd8eb5f9a1229d", + "cmd/update.go": "044717de710142b86d3d8d53c77a88d1723ff87520c2efda8876f4d1fb0fc604", + "cmd/usage.go": "8c8b38a6706e5d6b85f468170ffeaea4e17433164d0e30cae33402af906cac3f", + "cmd/vault.go": "a5774e7025de9475854a364e0593f31fdad41d29eff8e36396d1b9d6d3a415dd", + "cmd/vault_backup.go": "588881f8dad1c7a1c71cb91907ccc70cad951f417c001f46d4fc9c49e16b22e9", + "cmd/vault_backup_create.go": "4999983a3efd5f74ce89c576935a5ce5ddfac76f0aa25e2bf8ee73446bdf123c", + "cmd/vault_backup_info.go": "a808402b4766bd95bdc84d5c08b0700f19d1faa8b1ce006ddd1758fad40efaf4", + "cmd/vault_backup_restore.go": "df31f93339b74155363f0faa119c2e6ed1baeda50641d5f28c0a73944ccd454e", + "cmd/vault_remove.go": "9cb61bb2b409acfc266a51e28cd1002d7f52338a4798ddff83da1987025ea612", + "cmd/verify_audit.go": "013727a6064c86cb0e7136fbc4ac976a7738d3bd200ae9d6533152206fb675a2", + "cmd/version.go": "ccbe76818fdf4173438824a2976bf3a82f912767f752915453dd9a38d5eaa10d", + "CONTRIBUTING.md": "1e4e9c95ebddb6b6fc7ef3fc9bbf1f634c9908230d6663101132d5a83d430c5b", + "docs/01-getting-started/manual-install.md": "8e172bdaf1ae86107d6a9101713c00e3f409b6eda6ec67d97a0e53d719c054ff", + "docs/01-getting-started/quick-install.md": "776259dee84c9e2f074a590b79b2c484e64bdd5f977cce016dbf3df77d899b5e", + "docs/01-getting-started/quick-start.md": "76100d9574216c50a4ec25bba6f96100937db004fa2a01be4d72c450abd1840e", + "docs/01-getting-started/uninstall.md": "c7b3686bb8920dcd1a2912d76cb9fbc401e3a1fb31f16cc86f9db5b64b04068f", + "docs/01-getting-started/_index.md": "24f76b99f8c6796d7dea7c50928a33938897d06a8b491c4906209612adfc25f6", + "docs/02-guides/backup-restore.md": "4125f87bf4b941b323e72e0cab99212f68be9ee551b5b5dfd32b5fdc5728c929", + "docs/02-guides/basic-workflows.md": "abf673effd5f7048084f6933bfdb965a3d2927c8eec96cca0d24d7ffcf54945f", + "docs/02-guides/keychain-setup.md": "5dd994d202f22dca26ff8155ed08600bb634d4da51623ceeadd43608cb6bb8fb", + "docs/02-guides/recovery-phrase.md": "35dd31c9f3b4d043f0058626f8c7307d66b1886b9b3c34fc65d9c7352ff70c1b", + "docs/02-guides/scripting-guide.md": "9996c8f7dd8a102a2091cf975d57dcf73edf6638e3be13e47db98e3f6fd61a93", + "docs/02-guides/tui-guide.md": "505bddca3ee2e580e6c1aae8767aee0743b68bdd0e57c1703936b55b5f551159", + "docs/02-guides/usage-tracking.md": "4ba15ce03bc86f33db7e4e6f0613c3a7984f6a5ce247c7318acf26e6783e68ed", + "docs/02-guides/_index.md": "c6dd48a1975eda4610622424ba76f710bf05f94fe0a6bebe418addab4313ab06", + "docs/03-reference/command-reference.md": "51a4bc3f58dbff04ea871a72cba7e7f19839df579a2b693e50d37137167496b1", + "docs/03-reference/configuration.md": "c10573f971340d1c69730d09119b59fb6d7e95d376ac648cd407644288278b71", + "docs/03-reference/known-limitations.md": "cf6fc6396a8fb23a71da49b3703010c1c1a1158c36d16377539c9aa51dda396e", + "docs/03-reference/migration.md": "06879f2e2c5440954cce7292608be366e6859e8608c4449ff6e9adce9e5d4e7c", + "docs/03-reference/security-architecture.md": "49576745392292fcd36563ca9584a5e738d47e2d62faa11659a986ff7deb33aa", + "docs/03-reference/_index.md": "7f4375eb417603299a10f5b5514efec9375ecf0dbe5aac25bd10cb8d4d962703", + "docs/04-troubleshooting/faq.md": "0f7a67ba120e9649473b0308ce1e5fb4260b4a90eb77382f00fa8557cf4b31ff", + "docs/04-troubleshooting/installation.md": "241bb4919f0dfc69c8f7779ba7c9784845c09936a8a477832d423f4f3ce54c60", + "docs/04-troubleshooting/keychain.md": "203d54aa1ebfc1367e2a5d4c11d0390f3893a1be780abb06d1efd15cdbcbe8e7", + "docs/04-troubleshooting/tui.md": "a0f13894c2cbca0035dc18ae468551193342332d51c988ed72e9c2b52eaff6e6", + "docs/04-troubleshooting/vault.md": "be949443c1c9ad81156a27b2474a41d46faa691b977a9f33168ed971673ef321", + "docs/04-troubleshooting/_index.md": "c9bed28801a06cf760d45358f8449fb9f73a227efae934cbd76700e335a14b18", + "docs/05-operations/health-checks.md": "e7cb30c57d814c81c520593e30fe65ac3374d09b169b274fb400fc9fc3f35588", + "docs/05-operations/security-operations.md": "4071312ed878eabe5e87c34173df0a546f0e453e91d178a2d110d9b43f3b5e23", + "docs/05-operations/_index.md": "1b243fc3b06e3c9218c76a6fae1ce9fe16c995c9d7fb486a0ad9e3ad8b0f74e1", + "docs/06-development/branch-workflow.md": "b9b8b1ae0bf3b9e8fef86f40ab9ecc6b8662be9e68bf2ae7a797033d354741f7", + "docs/06-development/ci-cd.md": "4c46a06f4b09ac02ffea3c00ab78a69d3ede84128cd8202c01fb3c1673e567b8", + "docs/06-development/contributing.md": "c578ab3330adeb2dd120cada0cdb987656647e2101d2a5b6f9efe90b30dc8c83", + "docs/06-development/documentation-lifecycle.md": "e75c85dbe94851d88dc7e7eeb7ffb86dbeeb08c0f4066d3b7b7db63e7aaa3bc0", + "docs/06-development/homebrew.md": "6b5cae03d66e72a7cebb88951eaafc8706a078aa3abc799ffd60a3eb5183b54d", + "docs/06-development/release.md": "1476afcf264708f5146669ac50aec037f51255cde6f92401e20a50cf1eaaa48d", + "docs/06-development/scoop.md": "0ca35b10cb16cfe0703dbddcba3592185d8523ee98a5a765381af676d012697e", + "docs/06-development/_index.md": "0c42aa905b325d11412f118dddb08592ba6691f3f843356c5217c7fb1d32995f", + "docs/README.md": "19b0908283717cec8a16127f5480a4398ea0318f408db0ca00e32690f1faa792", + "docs/_index.md": "deb6746b1bfe87dcfd60c12d95c58145425f9ca8ade8e6f08af6f837eea0bdf3", + "docsite/go.mod": "3a00b8ca7f8c1f0dbc8059d602ad62f6270f83b632d9ce6146b39ae0f82cafc7", + "docsite/go.sum": "f77fa4d8c436f59bf47fced4c59314ec7404d8c214e4f08c30762d2654b7d258", + "docsite/hugo.yaml": "ab82f93b5e6804fdcefa4d9700d03cef5eb9fe8fb54769556f9fe92e11e4caca", + "docsite/layouts/_default/_markup/render-link.html": "21b2c86abd5bb3125b3574d1b162e14ccc3581d92ab5204a05b43b2290c7f935", + "go.mod": "1a3ffdc928ab7415386b9c8bfbe9b24cdac2d67f54f12f4ad5953687828312b6", + "go.sum": "e12956337ce5b0c90e0f137f3051838935003455109513e8696ea006fac3c3e7", + "homebrew/pass-cli.rb": "8a0698d414be4c3eb02eb1db29c6d840a546405ea205298f24abb81f38d87308", + "internal/config/config.go": "4bdf7fd0dee283c655ec8525772b2292eee5290780197ba8d491bb05ef9f1b63", + "internal/config/keybinding.go": "339aef6ebe15ba93c8d99ae33470819a76469eb175eaef02a5392bbb7430c133", + "internal/crypto/crypto.go": "1477c28c4d7e9f8ad6c20c3d66dcbbc12a8c1cb2d80f3c4b321f1ff4f88adf57", + "internal/health/backup.go": "ec9a1d09f08167c01c0feeb426942498e3dfbd8e3cd82be817b03ee8e537034f", + "internal/health/checker.go": "a696e3d7e6c01fdb916f181d202c90f546479f2b4c8d2dbcbe53e3610805eb3a", + "internal/health/config.go": "eba4b79f5239cb502ea0672edf03b2c0a1275a268f4dc1d1bd8a9ab27e1bc3a5", + "internal/health/keychain.go": "6e1f055e6a8df004eae7f1f08c6cc92c292ee277a68328fcc1a0d68a0cebf82c", + "internal/health/keyring_production.go": "15006aa965f9564e844d95f552cb91e4a3d5b637c78f5b591181b76c4bbd70eb", + "internal/health/keyring_service.go": "492cf9753a9aad188419918d57d1f39b7994a2d9ebb96e107870e20dc4938de3", + "internal/health/types.go": "c806d5df05527e564b91c62c698a1c682835bb921046dbbbed798f6f3b2c45cf", + "internal/health/vault.go": "2d35efbab34b96552108dba1fc8e75715749889ab3fd046549824d6933b48f6a", + "internal/health/version.go": "8dd64df30f3784ae85729c7a8e701188b10f4822852200a40844a36899d80ea7", + "internal/keychain/keychain.go": "9444e0d3deb9e240ed04868963fe055048560ff52912c82a71f854b3168a6445", + "internal/recovery/challenge.go": "a0c1f6bf2259a29d32da9f1ac17a53e39133f7966e23f01c22a7ad9772250eaf", + "internal/recovery/constants.go": "9e09245e75fb841bbdcdb4b4b26361d63026b3cca1df0dc5a5ddd6d4ca4e31fb", + "internal/recovery/crypto.go": "92e9955a85bf11d1092d93597f07554a4ec6b0b502bcccd7ec51c6f4d8e9dc9c", + "internal/recovery/errors.go": "87fad0d7aae5707c74bd5696ef926acbf0373714852dfb8bec5ca7b8e4ba8488", + "internal/recovery/mnemonic.go": "9cc6f33390182d6ff068751c4f13ef62fa7ddd8e0473cb0df7386fa4c7b99cb4", + "internal/recovery/recovery.go": "5d49bca16f4aa2bf75548d7faafae60db6ba3cf1f6e96a3cf3a43579dc245981", + "internal/security/audit.go": "ce9c7c1212180f5369a217d471b99c69058c38198b8bae1ace3d122a1b72d7d1", + "internal/security/password.go": "d0130b1bb05895d3a0ecbde6c18e551bd0a95e69c2ae81cc2b8af9297309c911", + "internal/storage/atomic_save.go": "fdaebc0dd8cc50172b4bb1cfa795d0b1fc3a981ee7e47631ca7521ea80dde872", + "internal/storage/backup.go": "ccb257153d4289fc4262c11430851c86122ee7edf6c526d5374e87ab712d43cc", + "internal/storage/errors.go": "21b024772cbe1d95f0965f6279ae40c8661279a95fb816c395f17d07ddb72923", + "internal/storage/filesystem.go": "3ffffcfae9cf862a1a81bd03f81de8f421fa829ab8044151b3ac1dc75ca392a0", + "internal/storage/filesystem_spy.go": "6e8822d6adf87f6daf43f63acfdea09a0012583973c486bf4f52b701c958cbd2", + "internal/storage/storage.go": "cbafb5b99b9ff1c3e3f504d4e737e9ea32adef35bd4861468ea763128b268cf7", + "internal/vault/firstrun.go": "575f5ce7ae8a26f53c0b2ead4f12ff172c718384c5ef8bc8a6ab11410ea48cfa", + "internal/vault/metadata.go": "94cbf40d6c6f7897c058d1bdfbdca8379b0063c66ee91b4575c2b5a48c90a304", + "internal/vault/vault.go": "1bcac600b2125c87e83915b6ea8458980dd1b3ee134d8b47a1735f0738dc6d3e", + "LICENSE": "a66c73aa52d80b8e6287af2d3b4ed036ceb2f9decb540ed411cccc7a39ad215b", + "main.go": "b9d587d7c749d5b70b152fe8dc42f727b213ca765ac8507359ea4b5b5ce6d374", + "manifests/snap/README.md": "e395fff58a46147995b5e4aaf981f624b615b4dba8b3ccac3bb65fb582bb3d7d", + "manifests/winget/pass-cli.yaml": "c4a88dcb7b345331bd742c5663692abe861237bef3c6903aeb16e7773837fe3a", + "manifests/winget/README.md": "e8ef23efb46f2e5c5dad763e0ea17fd710ed38aeaeb2b7def28e7dd0fc45f37f", + "README.md": "3b05f3537f17c075a92980d2267d31e0b9c9f74236bcd63067c296dd07d63a15", + "scoop/pass-cli.json": "35b1c6462993e009b89a98ff3303e44c663a89681c19592e1576ca8d3a7213ec", + "SECURITY.md": "46b11317eb0c8d8efe21f891060dd4c722d973c8debf7c89fefa99b8d829ccf2", + "specs/archive/001-add-manual-vault/checklists/requirements.md": "85ab994ef29fae0d0083bd0b1dd34fa1edc7ee442904279b1c140241959991ad", + "specs/archive/001-add-manual-vault/contracts/backup-create.md": "e928793fb396f7adeec5075726e459994ec443f8fde89de83cb5a2fec5ed3db5", + "specs/archive/001-add-manual-vault/contracts/backup-info.md": "47b763b52a7d1785f9c0debc682a82b578eec1e45fe6b2e4724ea4fed216ff4a", + "specs/archive/001-add-manual-vault/contracts/backup-restore.md": "47418485bae535c22cfade20b532e3a96e1ee381cb2ae46d4067671409f57bcc", + "specs/archive/001-add-manual-vault/data-model.md": "e663af445c06e34ef55cafdcb4e0847764c52bac1a1aec4e057456517344bb91", + "specs/archive/001-add-manual-vault/plan.md": "125a0a73ad3e1609a7302aee04364d49f626a595d7c3229a800972872dc7d490", + "specs/archive/001-add-manual-vault/quickstart.md": "b5cdd1ac1c2de45ed3df2747ff03b57db9038cd1ddb7cb5d171794a6a5daf26d", + "specs/archive/001-add-manual-vault/research.md": "f60b7e93780f937123680bd6bd0bc9806be7fd63a5057f7d6e288acd896503fa", + "specs/archive/001-add-manual-vault/spec.md": "baf3a3402c1070f2585519f0d3cc806811ec748359870366c41a158a8d9050fd", + "specs/archive/001-add-manual-vault/tasks.md": "3ca42a5f4bde4603261639315d56bcaadc84c8fbe863a1c36732f46b28b88869", + "specs/archive/001-remove-vault-flag/checklists/requirements.md": "63db9bf23a5ee51e380d1e140928a8466fc49c8ad45e894d754430d2afac3a47", + "specs/archive/001-remove-vault-flag/COMPLETION_REPORT.md": "4c963fbe70aeb2eb9d1e8f74f74ac1efb8cd261ee42133a461488fd7c4480927", + "specs/archive/001-remove-vault-flag/contracts/config-schema.yml": "715cfc569b16c879dcdfe6e80aae5cd8e1ac11b9999b113ede91bdaec6ed5027", + "specs/archive/001-remove-vault-flag/data-model.md": "852c78408738673d164f8c7a48e857fb10bfff88a180f7aec079bca96a85016f", + "specs/archive/001-remove-vault-flag/plan.md": "bb01dc875519003666cdbbb76ef6deecdaf8e13afec6731dbe0aca3c248d8bb3", + "specs/archive/001-remove-vault-flag/quickstart.md": "76a96c2a731fa9a7cba916a762dbd1d28c1d98105c3e79b52ec3008d686e6237", + "specs/archive/001-remove-vault-flag/research.md": "6b789837898e4b3fc1d1fa9e166da14eb37712e22e9bf870eab36849521d7a84", + "specs/archive/001-remove-vault-flag/REVIEW-FINDINGS.md": "747a7ab88c685ff5429b271d71837bb48a33a7bc6bfd4560c6f57666df890a8e", + "specs/archive/001-remove-vault-flag/spec.md": "37230a98d9d9dfadd8fe1ba62dcdbe2308deafb33a2ef000cf1d28f27eadc674", + "specs/archive/001-remove-vault-flag/tasks.md": "ec78a73420747331b74841b6cdfaa521d6425637b64a5cb531b1c7f5055a58e0", + "specs/archive/001-reorganize-cmd-tui/checklists/migration-safety.md": "f04935aec9860e70ebf58a5bfa54312b3ac46a6d655afcd68fff4f7514191ae9", + "specs/archive/001-reorganize-cmd-tui/checklists/requirements.md": "4569dc3a5363068712df776ab2a47837fb6703ceb6f8b6379c499159b7514b24", + "specs/archive/001-reorganize-cmd-tui/plan.md": "5858b239ad711b8eda05a9a84b356a03faa8a1fe3d735912ad342ca43cc762fa", + "specs/archive/001-reorganize-cmd-tui/quickstart.md": "92ca7d338dfbf20d195d3818188ee6d302203c5a592cb57b0665cbaffa40a077", + "specs/archive/001-reorganize-cmd-tui/spec.md": "026879d1383b5d95a3ef5332146c656858bbd72a9eac5d485cbc9d5ca2a66cd4", + "specs/archive/001-reorganize-cmd-tui/tasks.md": "0bc12e8f84098f2664a9740fee5c724b92ea96b65c50dfe7e649c1c696bfb9c9", + "specs/archive/002-comprehensive-documentation-restructuring/checklists/requirements.md": "c854bd4455fdb3ee0917232294291e7907a9fe516f912088e0f97911fe56040f", + "specs/archive/002-comprehensive-documentation-restructuring/data-model.md": "262177e2e175ac1af596630788161c65e9119eeda39cac39296d105e1c92c161", + "specs/archive/002-comprehensive-documentation-restructuring/plan.md": "5522512ba4ce2cf0eeba3a9338ea41f99010721765933670481eeabd904c8513", + "specs/archive/002-comprehensive-documentation-restructuring/quickstart.md": "c84eb6967b65adcb7bc2d1ac3fab82c0bef4d6c1013069297ee284174ee9cb6f", + "specs/archive/002-comprehensive-documentation-restructuring/research.md": "f122a9846c10819cecc86ca47751f5316c3d01bff6c6fb9571e7e1b0d4eff2c4", + "specs/archive/002-comprehensive-documentation-restructuring/spec.md": "b72bb64dc75bf61c3bff03aada4e35bb9d9516ef96fe913af185b596990869aa", + "specs/archive/002-comprehensive-documentation-restructuring/tasks.md": "484a03834364ec6cbfbf21c7971b6a92c46a00af6033fcf20b2db6701ca769f8", + "specs/archive/002-fix-untested-features/checklists/requirements.md": "ac94492cc31a31cc1bda63c6f89b81eb3030ee4168ad24d83f769da47255d04b", + "specs/archive/002-fix-untested-features/contracts/keychain-enable.md": "348fe1a8fbe428ef6f6967e5493008c6e665f27651a39043caf198a97321c02f", + "specs/archive/002-fix-untested-features/contracts/keychain-status.md": "e719155a6e05d64e077ea661d716e51f4e245207df82a374e575ea8fce2f1c73", + "specs/archive/002-fix-untested-features/contracts/vault-remove.md": "f808b94e94526aba52bcec5148d0f4753387ba25b61c3e86d9c60e873d385e9d", + "specs/archive/002-fix-untested-features/data-model.md": "069583fb7032d126ff5e2d812a67fcaaae998325c449a3b5862e24f55620cb71", + "specs/archive/002-fix-untested-features/design-improvements-post-spec.md": "68f8b9cd6ce505011ce0db405e2dbbc6f7c2aa4dcc0d60a884869790a3047d8a", + "specs/archive/002-fix-untested-features/plan.md": "99423f57c86f06551fa9ceb42901e8dada520734f46a6cf65302adc5d455f9ba", + "specs/archive/002-fix-untested-features/quickstart.md": "6b228cbd40c40b4f4cd33a302b790ee7625124987d4945668dc1040ee9d9f91f", + "specs/archive/002-fix-untested-features/research.md": "ad59cefdb4cd0d34df9251b4e1b5f660be8f41b02dbc2765afdec4349eeb76f0", + "specs/archive/002-fix-untested-features/spec.md": "a1ad70bbc3922e5f5ec9aa93754e9125d57bcee28e22a18468a5501fd468ecf7", + "specs/archive/002-fix-untested-features/tasks.md": "fb9fdb34eebe661fc4cf1bd302aeb5d38e9873f2291af095a4ad352ac33a5409", + "specs/archive/002-hey-i-d/checklists/requirements.md": "d93b7ca4ee23dbb3a05f3627ac1c3a63b10a1134e984815f8d17fe05b4cb2886", + "specs/archive/002-hey-i-d/data-model.md": "cf237510ac9cab6ad22c074d54a0a2463df60f1ede44da7740b569762282a2a8", + "specs/archive/002-hey-i-d/plan.md": "0e660b20fab7620e431bd9a6b24eb2ef5770fb574c5298f381ee6d12cdfa847f", + "specs/archive/002-hey-i-d/quickstart.md": "981710f8da7261d6bfe45c86d9bdb939f55f473c3e589ffbae7ba4762b22043d", + "specs/archive/002-hey-i-d/research.md": "374b812a49a3372a0928b274bad0de97bacd556ee4d267a519fcdf9c0d7cbd01", + "specs/archive/002-hey-i-d/spec.md": "3da2551c83ec24938e0a59cab3e9563b066fd1fa6a7915e27bf7e5a45226e985", + "specs/archive/002-hey-i-d/tasks.md": "cb0052b478605b8582a80f0629b7d0e43106dd1c02dca74a923accaf2121ba39", + "specs/archive/003-bip39-mnemonic-based/checklists/requirements.md": "f47340370cee2f4d10be732c626eff39f16e575e6d4208db5a668dd2789b6268", + "specs/archive/003-bip39-mnemonic-based/contracts/recovery-api.md": "83203d5593bb86b2c364ba318bc8ef1438290b4a305c38b51b3cf8745eb18ecb", + "specs/archive/003-bip39-mnemonic-based/data-model.md": "2ddcd80a0fdd46ddef9d733714389339e3efd94c59a7db2747da5af0e959b128", + "specs/archive/003-bip39-mnemonic-based/final-validation.md": "60df06702ba2e66e26b3e86fe67fdd37307056c5d03dddf26f37daaf54882446", + "specs/archive/003-bip39-mnemonic-based/plan.md": "2c524124ae3db71d258b8b772a1704c69da65a2c3f731ddf26d769580ea8f1e0", + "specs/archive/003-bip39-mnemonic-based/quickstart-validation.md": "0da5058c8f0eb9d7442ca88b945c17ebb8fd6f52eb07cf99bba447a764c4c7d4", + "specs/archive/003-bip39-mnemonic-based/quickstart.md": "4ab1e93777f9e7e1fd110921f7485d358ad88485f174a9a3e1923f28ed33a4af", + "specs/archive/003-bip39-mnemonic-based/research.md": "8604676b093b85abf3b94905d62476221b6ad610d107612b81f75673c77acca9", + "specs/archive/003-bip39-mnemonic-based/spec.md": "0eb0d5f289c0b5f1b3580c54988e96306e5cd50d29539ad0b50ff8d83ad4bf58", + "specs/archive/003-bip39-mnemonic-based/tasks.md": "fb6455b5abd58095a075c88f1ea07501be5d0d517f54ccc2673e783908c7986b", + "specs/archive/003-implement-atomic-save/checklists/requirements.md": "db1ecccf06ab0952862d250b678fadef353d210f6f4b1269073a946d4f64d238", + "specs/archive/003-implement-atomic-save/contracts/storage-save.md": "58bb32b71bffeaaa628684293459f8cebfd58bb69aa11ef99dfac892bd059ed9", + "specs/archive/003-implement-atomic-save/data-model.md": "07e7e7ad6ae93d0caf504ab047c8c98ad0e07673255b3a2077894a638d3aa159", + "specs/archive/003-implement-atomic-save/plan.md": "d9a583e5f8f5e95f42ded515b80b10797407087b8f3171736f2175f80a4a01b6", + "specs/archive/003-implement-atomic-save/quickstart.md": "3868ce7b107f4321ddcdbeba9e1bc1ffc9c1fe1afca5eee9036106d559b3455f", + "specs/archive/003-implement-atomic-save/research.md": "19c0c6a6842a3e37234608ec6d477d814abb7ffd1f6bef2a97f218b3f71a9764", + "specs/archive/003-implement-atomic-save/spec.md": "20f5cf017e13d3bc7a17d4287e2e97643f66d0c6ae21508cd6bc755929f113dc", + "specs/archive/003-implement-atomic-save/tasks.md": "b8f8719e3951f088b5a5d2cf2c93080dbe5cebe8d386228f01c4629f57c27915", + "specs/archive/003-would-it-be/checklists/requirements.md": "4f082475951eb4c3c22addfb6c291fac37a2bc669f376d2cc74c72789cf97353", + "specs/archive/003-would-it-be/plan.md": "c461bd531ea3a01975e162e62ee15628ceceddb8f4e80b58825c1817af7f5a8c", + "specs/archive/003-would-it-be/quickstart.md": "f63292b34de55ce6af7aa2559ceea7d0984d76c2e7d27548e3af29dc02ff08af", + "specs/archive/003-would-it-be/research.md": "f38288af0ae3c418486b759b3c15f35f419390fc28cd509cf56b944029c66120", + "specs/archive/003-would-it-be/spec.md": "b8878867d47909f0f7e9e97a6e6517423a2e4368ae8e22ad4d59bee350dcaa14", + "specs/archive/003-would-it-be/tasks.md": "0df95aa365d128b83292df904ab5884370586e6cbda5b4e5b0a06833287636a1", + "specs/archive/004-we-ve-recently/checklists/requirements.md": "2c5cd6b9d441e8fc14fb2a6d0261a4b071e81f8e2c170b85d3dbfdec4341b664", + "specs/archive/004-we-ve-recently/contracts/tui-usage-section.md": "c90048389a98cea14f7686c842ec03c44e1c155a67715314899a7240324ab500", + "specs/archive/004-we-ve-recently/data-model.md": "6503b739589b7dd8c75ba642ef7d6e20ef1642307095b1b8c069a1e432799923", + "specs/archive/004-we-ve-recently/plan.md": "d0c5de244bc0ab235a0f3850b8ddaae1d1de5da9b4ffdec5f338843a34477478", + "specs/archive/004-we-ve-recently/quickstart.md": "634ba11d00be560b933213cc405883d082f832b2dee82b6a1bea860a71ab5239", + "specs/archive/004-we-ve-recently/research.md": "5cb1c1e3e81e8c9f32f40c39e087715dda7f7f36196148740b4a9dbd74bade9c", + "specs/archive/004-we-ve-recently/spec.md": "2fd2f5075b70f463d6e19af569897f10bc8bbb78d8c881feea83107c756bb8cf", + "specs/archive/004-we-ve-recently/tasks.md": "48942618204539eedccee78fc0478066241ea73353de2345ca5ebf15df3f52b9", + "specs/archive/005-security-hardening-address/checklists/requirements.md": "8a3c972e32bb30adcce0278d25506ebb34302c1ebf73e174e3ca203178a97457", + "specs/archive/005-security-hardening-address/data-model.md": "daa06fc69e4fd01bb7f73f5cc5d7276eb27007375b8cd16701849e53d6f069b0", + "specs/archive/005-security-hardening-address/plan.md": "2d003dd5c25eaf3432d79c4fa90a6cccedbabf81919b4e7559835310e8ab1906", + "specs/archive/005-security-hardening-address/quickstart.md": "1539202a8c8177a7cc8ba696bef11c1674bf0a602f86db3f29bd7d0ebe8ccfd9", + "specs/archive/005-security-hardening-address/research.md": "21f8e3c930a58a9368f8ba8c1f794baa279132cbb3d8d8fcd83dd5b76d92861d", + "specs/archive/005-security-hardening-address/spec.md": "352d750774c3a6bd7306979ed59f718bb404914d60eb0c0a6948f728fa3457fa", + "specs/archive/005-security-hardening-address/tasks.md": "e80ed8391beb64faea7382aee14355ed6fa2ac0a6588f6ff63d766a7588232ec", + "specs/archive/006-implement-minimum-terminal/checklists/requirements.md": "55217e3e22c746786d0efbb988ceac4099651288188b0e2ce0324b01f6697c3b", + "specs/archive/006-implement-minimum-terminal/plan.md": "3d71b3d2da2d70492c26f22d0ebde64068c9720073ad6895b19859376a132986", + "specs/archive/006-implement-minimum-terminal/quickstart.md": "913a4c3977f2fa01003a7aa04f563c2226ed8cf922b28c4aa035120f992075ae", + "specs/archive/006-implement-minimum-terminal/research.md": "471088d59ef143d0c8ae1bd618b1365c38a62a9485ee5f6dbb84ac17025a4274", + "specs/archive/006-implement-minimum-terminal/spec.md": "e2f24e50e5743b75e42c046a6526370eb73d998cd36abc3e5ef12ecd9c837028", + "specs/archive/006-implement-minimum-terminal/tasks.md": "3d3ff40bfcb1c6854b65f5446a9665a339a2716ef9d3555c74ac6a1de4170867", + "specs/archive/007-user-wants-to/checklists/integration-testing.md": "a8b1bf98aa0adbb2ba847792131f33bc80b2aada5b345a0820dcba8f08e8d9dc", + "specs/archive/007-user-wants-to/checklists/requirements.md": "f8c8bc53ba1e19a72cae47519d98940afcd1d621f0c6296530f7edad46ade533", + "specs/archive/007-user-wants-to/contracts/config-schema.md": "ed5593788f7f331f1f56f7722a6d7536fb357fbe492abea832db949cf0191129", + "specs/archive/007-user-wants-to/contracts/config-schema.yml": "c1c5c287df0bd9ded2228b8feec2d6dc11b2dc7e66a10c9bf94a46dfa5c20451", + "specs/archive/007-user-wants-to/data-model.md": "beeb225c16287773fa0c7a56c7a9b065d876bf0cc1aeaf19ad0aff27b04acddb", + "specs/archive/007-user-wants-to/plan.md": "8184e5ffc3a94e07c13e0119d7087b7992c2c951d8f0fd37c83a364141c7a34f", + "specs/archive/007-user-wants-to/quickstart.md": "16937a0b5f1c9c278b9f73345f452bfd241f86fe327c9fcaa0359daaebd66e6f", + "specs/archive/007-user-wants-to/research.md": "61314e5761e8ef6318ceffdc63e42b5f87286294c33d49dd9115433a05fc0e13", + "specs/archive/007-user-wants-to/spec.md": "c0139cf7cfc9cc7f9dfa40fe669ddd475b79af71d15600fba1bb12b8a58a52e5", + "specs/archive/007-user-wants-to/tasks.md": "e5451504ab60e0b43d4b74d8b046a14433a075537bbcb823fc8e66322467486a", + "specs/archive/008-review-and-update/checklists/requirements.md": "7083e4b45b9d7e281de5202cfcbb44627aa7b388dbbeca07a31ce875b2af7743", + "specs/archive/008-review-and-update/contracts/documentation-validation-schema.md": "532d37d9cb20269f9ae08a8da4a3e77ad86542401e5b3ad20a8d675e98a6ef13", + "specs/archive/008-review-and-update/data-model.md": "1c675f9d76f361d3c7880fa5b7f97cbbe5ca72908f47e80cdb151f2dec03f384", + "specs/archive/008-review-and-update/plan.md": "675894252ae5dc31975e782445bbc61ccd4834d0c82eb8119ef751ad092bcd73", + "specs/archive/008-review-and-update/quickstart.md": "1a182277c0b6a4f4461882c60559d56e84916166ec86695dfbb882f10187dc5e", + "specs/archive/008-review-and-update/research.md": "5ee24a521c4f6d4d4a624451e58639f2f1ebf03f289aae5b8606a26bc7b3b8e5", + "specs/archive/008-review-and-update/spec.md": "9dac1077878d49976fa8f242cdcb0b1ee895e232fa084ca0f7e59a9d4857fb7c", + "specs/archive/008-review-and-update/tasks.md": "331c9255b0d0cd3099ff083cb5ea7c312ae3d16dddaabce5a41bbf1023b78adb", + "specs/archive/008-review-and-update/validation/command-tests.sh": "2586b0c158472d7caaa26b21429707a0b0015618334fe8eea8c62af9481d0b85", + "specs/archive/008-review-and-update/validation/cross-reference-check.sh": "eeeda0aefb73126008a90cc3161689dc16f0be6975fa83473a6b9c6e76126f8c", + "specs/archive/008-review-and-update/validation/link-check.sh": "0652367b0d38c93c12292a2f5a5d92018d3095a4f554833a9686c96e94a3cf49", + "specs/archive/008-review-and-update/validation/run-all-validation.sh": "133d8dc4d12af987057d136a711f501f43905f7d82815e9d48572ac3454566f0", + "specs/archive/008-review-and-update/validation/tracking.json": "550a43b384238e5e4f0d3bd5055c76fd71e0b3130a77d83cd72c3466507441d3", + "specs/archive/008-review-and-update/validation/version-audit.sh": "1e5568339e00b690cc008561b1f1bef69a3afdf6c2e49b7831c3f49992a98071", + "specs/archive/009-documentation-cleanup-and/audit-checklist.md": "bca75b0b9dcf0afac4865119d3c8825e2d99e19a4e0d0d1854d0424340e312b8", + "specs/archive/009-documentation-cleanup-and/checklists/requirements.md": "d2f7086c9123d533f852bd551bb4c16b73f6121988347c479ebf500f95744f2b", + "specs/archive/009-documentation-cleanup-and/plan.md": "536d932b93d2f69f2d7031f6ea9a77dc4f729cff1ddd8ca2f53389b4fd85a329", + "specs/archive/009-documentation-cleanup-and/policy-structure.md": "a431139b0f3277a39831cf814ca3feca033eced5ef865b7689f2ba0149685cad", + "specs/archive/009-documentation-cleanup-and/research.md": "fdeabe57535d9dee54559f2fb0bba648f3adab4b7a5f1dd288fc95192a64b4d1", + "specs/archive/009-documentation-cleanup-and/spec.md": "6d8a4f2fd94ff16a105a9187806eedfa10c0ad2c56ddd86105b0b41bac1371f5", + "specs/archive/009-documentation-cleanup-and/tasks.md": "fed11c53f257718025b1f45993fcb0e577cc8aff796d43c203251084c9cbf89e", + "specs/archive/010-documentation-accuracy-verification/audit-report.md": "62c31ec758e700def622c6bc512c5d24875c9d9712419afab36faefe12d3b930", + "specs/archive/010-documentation-accuracy-verification/checklists/requirements.md": "70633a978723a03872279a1ef8a9705e9a9dab4e248b521d7098e11d73abad7e", + "specs/archive/010-documentation-accuracy-verification/examples/migration-bash.sh": "882cf3287f6e64ee6e2f78bb63aed391f444c08d322e28d9b5c1835712b3180a", + "specs/archive/010-documentation-accuracy-verification/examples/readme-bash.sh": "b8ed1abecc98e11fe53b11d324133daa452651bb903af35b1af09c53f25262e8", + "specs/archive/010-documentation-accuracy-verification/examples/usage-bash.sh": "5b82c9c8e75c93b7021ab67fe8ad873b5677ca441c9970bfdd56826ba28c01f0", + "specs/archive/010-documentation-accuracy-verification/examples/usage-powershell.ps1": "dfc5ef7987d5af4cc44559acf9919853f7ab15f8db84c1b63d1407d8a5feacb8", + "specs/archive/010-documentation-accuracy-verification/help-output/add.txt": "e30d2019925568bc2914f0bf0157083ba9d979fa24d9f58a3e2d91dd3e0f0909", + "specs/archive/010-documentation-accuracy-verification/help-output/change-password.txt": "ccde93249bcc8b96e8d95cb79293a59c72824f0f484a8d7cbefa4dde5cfe84a7", + "specs/archive/010-documentation-accuracy-verification/help-output/config-edit.txt": "52921f0e7bf2a69cb23cc5c006b40d55b0491e5986710d23c2f33c234a4acb72", + "specs/archive/010-documentation-accuracy-verification/help-output/config-init.txt": "e83a3e7a159505247ba50d3425c095e7b457e229b43119da0cf5a0add0ae2857", + "specs/archive/010-documentation-accuracy-verification/help-output/config-reset.txt": "80c007b1ebf387ec54f2357b1bdcf3bc330639fc95c5b0325b30d1c0320c9798", + "specs/archive/010-documentation-accuracy-verification/help-output/config-validate.txt": "1e0d6cce38c6a5973771b36c3a14f44f1caaa1014917cc00a140526e83b73281", + "specs/archive/010-documentation-accuracy-verification/help-output/config.txt": "b13a8e83c339103eed6f5b521d0c6e0c519e5d40406bce9ee3acb238589b14c0", + "specs/archive/010-documentation-accuracy-verification/help-output/delete.txt": "af8ec41b9f742a185b9556a87cb114104b5f836487da5bb215722baa9b7278b6", + "specs/archive/010-documentation-accuracy-verification/help-output/generate.txt": "9954d6b774cb1c9c2e2cbc7e0651ca1f547dab70962875daa3e306dd0e6dc36d", + "specs/archive/010-documentation-accuracy-verification/help-output/get.txt": "16317167943e549aff5342e4f8f8a165b7f336ecf3a6857193bef7c87ce85e69", + "specs/archive/010-documentation-accuracy-verification/help-output/init.txt": "baea8be8c79feeb36fce5ac5ad1c84a4cb0a244f6af49dbe55ab50aa0f42ca74", + "specs/archive/010-documentation-accuracy-verification/help-output/list.txt": "40a95f04df54307c0f14f47fbdfa8dbab67a56942861ccae73b600d1b8b1e545", + "specs/archive/010-documentation-accuracy-verification/help-output/tui.txt": "a6bb8649bbac0c2866f2477e631d27e2a677d039741fcfb73b90dbebde7be614", + "specs/archive/010-documentation-accuracy-verification/help-output/update.txt": "8a6f58cac4a36e0c51a37c6947dd01e7cf40ad5abc1fd3687e2789aaffbc45c7", + "specs/archive/010-documentation-accuracy-verification/help-output/verify-audit.txt": "f4fbbd5684f873b454182608d31824fb442aaa336afe01753297b7de49e3d212", + "specs/archive/010-documentation-accuracy-verification/help-output/version.txt": "6a18ea7b85e4fb8f8a6c0141f00dee2d2d993340da92ae59ac742a848e6e4424", + "specs/archive/010-documentation-accuracy-verification/migration-script-test-report.md": "da3b93f5170f0e81e579de5f237f751daf8852c613ea9e8ebb57a4295fc8c9c1", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/manual_tui_test.md": "88c61d58c1a178a492311aeccd42881189c0a4afcf6c4dcd1b8b1c053d3c271e", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui.exp": "bdadb8c3892e22a2f223f63fc13bc0985aa4081c0fc6615612efb807367a097b", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_comprehensive.ps1": "422906835ee81d897481b992545272e83e9cbd0dc5bfddbfc76939e39d07c9be", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_simple.sh": "d073a6edc78d70b6a5eb23d664ca64310acf03cd7d7119b3e1fc0a9a00b8d526", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_analysis.md": "01348fab2aa1ce4d8bbf65fe3dd523da21abfba6c1e41aa60d871b55f787c2d7", + "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_test_report.md": "dcaf42e4472f1270ac6e80b601c3ca0ee0687ee75b04fb1b16f603756883251d", + "specs/archive/010-documentation-accuracy-verification/phase9-findings.md": "f02bef81dbbd6543fd10ac30894843a9214d9c2b29051c2578d8475fcc1ca761", + "specs/archive/010-documentation-accuracy-verification/plan.md": "ba76026ade27b1a6f516650b6cadf9d9c7c564bb9a6777be8661f01462cf3259", + "specs/archive/010-documentation-accuracy-verification/research.md": "05193c3ec5851bd78f15d638ec61eb9b57933304d2a7efc575c711b4481f2a4a", + "specs/archive/010-documentation-accuracy-verification/spec.md": "fda0f88cfa7000e6f24f3bd2092b479007b37be195fea14be937be42ef44d4ae", + "specs/archive/010-documentation-accuracy-verification/tasks.md": "2c0ce360442edfef04e271890f2d5978487c79a34a299d1b52a5e45277ebad35", + "specs/archive/010-documentation-accuracy-verification/verification-procedures.md": "e8247f69c2511b8c10609102bfd6c635db688a24f450d1ff038aad98f708a5ad", + "specs/archive/011-doctor-command-for/checklists/requirements.md": "766c45ea904c928a9962db1bdc2a38da742533f89daecc827d5d3076ddaf2f27", + "specs/archive/011-doctor-command-for/contracts/doctor-command.md": "d99e08a7822b85a6ec4cea8533dde91112ebd6c973418ff000aa66b78027f3eb", + "specs/archive/011-doctor-command-for/contracts/first-run-detection.md": "958ce1ec2facca6e237edda50f00f68c1703557f4902d2eaf0306be401513a78", + "specs/archive/011-doctor-command-for/data-model.md": "d3556e4d3f665df7285b7a63cae0d01b9616cd695b0253e5ef01e5d8b3bda7ba", + "specs/archive/011-doctor-command-for/plan.md": "50c777251120d3844083547b34eecd4cce35ffeffef5430083a972276b455416", + "specs/archive/011-doctor-command-for/quickstart.md": "d487f6fb48394ce3cbb092605ec232ab4062d1e6e190ab87819c7acfa898d974", + "specs/archive/011-doctor-command-for/research.md": "9499aa2e0cf3b97c1565f26ec4b8a0afdba19d709a6f2d19fa9ca2d6378c0c73", + "specs/archive/011-doctor-command-for/spec.md": "7d28992d8bb187fdfef0c734f7149dcdc79ec2f1147a6f0b131eeb611bf23809", + "specs/archive/011-doctor-command-for/tasks.md": "7b68f15a9e552193df455581cf52f634435351d915828c1f741b5eecb5b12cec", + "specs/archive/011-enhanced-usage-tracking/checklists/requirements.md": "d4777e57311181aa5087961704627195b26b6bceb0361031d62749265ac0ecc1", + "specs/archive/011-enhanced-usage-tracking/contracts/commands.md": "02f7c76742106c3d9624c1da558b4cec7bfabb59c9436772d83afa76e0647726", + "specs/archive/011-enhanced-usage-tracking/data-model.md": "0a17f7ff2d02ffc5c88058acebf23f510835ba24736ca8b2aaa34c0457daacb9", + "specs/archive/011-enhanced-usage-tracking/plan.md": "ef36f1782975e4c762a08284592d26bb403013c0ff770a18163478aa0618af04", + "specs/archive/011-enhanced-usage-tracking/quickstart.md": "495f2def63896d4d6f794b80b8ad679606324b22723425144b90297ccd177324", + "specs/archive/011-enhanced-usage-tracking/research.md": "f695d050a644d043aee491748fffd484c78410af476d3312bafc154a3593304b", + "specs/archive/011-enhanced-usage-tracking/spec.md": "263cb6ad2bc1e287813aca8eada7c4f5c34365c1d11c87b05bfac2bd0d30f8ad", + "specs/archive/011-enhanced-usage-tracking/tasks.md": "67250729cb876f30539e64157b6ff3b1bc52ebe355a701646b22608bb8a352e8", + "specs/archive/011-keychain-lifecycle-management/checklists/requirements.md": "4cd7b8b9a12253d2a7f4ec12d5a7e2c78b3ef1d85dc5e691536d2f2680adecd8", + "specs/archive/011-keychain-lifecycle-management/contracts/commands.md": "a74568f84f5cc474b398a8966ffde73ceab263f173a9e42eebb9520510d16683", + "specs/archive/011-keychain-lifecycle-management/data-model.md": "7d4dd16012fb1c28a24bb87dc9661019aceff9fe3dda7f661eaff9507439dc33", + "specs/archive/011-keychain-lifecycle-management/FOLLOW_UP.md": "761a0a2d3d0e257a0f9bf5da30680d09597e2ad4493fa39e169eea41f247a335", + "specs/archive/011-keychain-lifecycle-management/plan.md": "ebac0814cf3d238ac29cb63354ff64c729d227c4b2ab10a0f0cfaba9bf52ea6e", + "specs/archive/011-keychain-lifecycle-management/quickstart.md": "e763365077135d58aaaaf966254276a1b60bbf36fabb248913e72cf1b55cc93b", + "specs/archive/011-keychain-lifecycle-management/research.md": "901698cb066b7364b53e8e59a57371a07c355dbb27f641667409d265c87e57c4", + "specs/archive/011-keychain-lifecycle-management/spec.md": "dcd18e20e60d3f9f71abd8b760a77617d76535a3233e5255f99dba72f208db3c", + "specs/archive/011-keychain-lifecycle-management/tasks.md": "204d4c2572e77fd4d5fdd2bb16ffd9f5ebe4d8000916400da6c9d397c53d2775", + "specs/archive/012-vault-metadata-for/checklists/requirements.md": "6abaf4ba567331174c503b8f6480c3a6d766b71de4745854e9417656d9b4a9f3", + "specs/archive/012-vault-metadata-for/contracts/vault-metadata-schema.json": "f373760db88ea988ad88532c9c690f0714c93613402ec21a33565ec8950a2dad", + "specs/archive/012-vault-metadata-for/data-model.md": "bb7af1b0e5f57d01dc43664007279dbbe1ebd9575f3d5b2c352c23aec879b96b", + "specs/archive/012-vault-metadata-for/plan.md": "9f3049e89071f47a0df5e1b7d3348fa8e8209e62a0feae02a4f81fc1ef71dc2d", + "specs/archive/012-vault-metadata-for/quickstart.md": "9ef9a5255ec0d10b987fd86650b58c51c0eea0a562ad8a222bd5c31322cd1996", + "specs/archive/012-vault-metadata-for/research.md": "4f9e314a2a89c34f0365f856045e36220881f760e2498e8c086a6db45be996a4", + "specs/archive/012-vault-metadata-for/spec.md": "9e1ba54adbe86b4af5ef0206593bbbbb0d1ab704db2f2382f40b02a0c9ccce99", + "specs/archive/012-vault-metadata-for/tasks.md": "7550706a28c4d4513d80487535158cde87475197e8e08a28107de17ec711a90f" + } +} \ No newline at end of file From e700033bb40bd35669f503ccf758921750e4d125 Mon Sep 17 00:00:00 2001 From: Ari Date: Fri, 28 Nov 2025 23:26:17 -0500 Subject: [PATCH 06/19] docs: fix broken links and add language tags to code blocks Broken Links Fixed (4): - docs/03-reference/command-reference.md:143 - recovery-phrase.md path - docs/03-reference/security-architecture.md:274 - recovery-phrase.md path - docs/04-troubleshooting/vault.md:147 - recovery-phrase.md path - docs/06-development/contributing.md:472 - docs directory link Language Tags Added (62 code blocks): - command-reference.md: 18 blocks (text for output examples) - security-architecture.md: 6 blocks (text for cryptographic pseudocode) - health-checks.md: 12 blocks (text for diagnostic output) - basic-workflows.md: 2 blocks (text for workflow output) - keychain-setup.md: 1 block (text for symptom display) - tui-guide.md: 1 block (text for usage format) - security-operations.md: 2 blocks (text, ini for .gitignore) - branch-workflow.md: 4 blocks (text for CI/CD diagrams) - contributing.md: 1 block (text for project structure) - documentation-lifecycle.md: 4 blocks (text for commit formats) Validation: Error count reduced from 382 to 317 issues Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- docs/02-guides/basic-workflows.md | 4 +- docs/02-guides/keychain-setup.md | 2 +- docs/02-guides/tui-guide.md | 2 +- docs/03-reference/command-reference.md | 56 +++++++++---------- docs/03-reference/security-architecture.md | 18 +++--- docs/04-troubleshooting/vault.md | 2 +- docs/05-operations/health-checks.md | 24 ++++---- docs/05-operations/security-operations.md | 4 +- docs/06-development/branch-workflow.md | 8 +-- docs/06-development/contributing.md | 4 +- .../06-development/documentation-lifecycle.md | 8 +-- 11 files changed, 66 insertions(+), 66 deletions(-) diff --git a/docs/02-guides/basic-workflows.md b/docs/02-guides/basic-workflows.md index fd89f2ce..22bc1962 100644 --- a/docs/02-guides/basic-workflows.md +++ b/docs/02-guides/basic-workflows.md @@ -29,7 +29,7 @@ pass-cli list ``` Output: -``` +```text Stored Credentials ================== @@ -257,6 +257,6 @@ See [Health Checks](../05-operations/health-checks) for detailed health check do #### Keychain Access Denied (macOS) **Symptom**: -``` +```text ⚠ Keychain: Access denied by OS ``` diff --git a/docs/02-guides/keychain-setup.md b/docs/02-guides/keychain-setup.md index 18e2e881..aa1ac320 100644 --- a/docs/02-guides/keychain-setup.md +++ b/docs/02-guides/keychain-setup.md @@ -144,6 +144,6 @@ See [Health Checks](../05-operations/health-checks) for detailed health check do #### Keychain Access Denied (macOS) **Symptom**: -``` +```text ⚠ Keychain: Access denied by OS ``` diff --git a/docs/02-guides/tui-guide.md b/docs/02-guides/tui-guide.md index 9c36a917..c90a1800 100644 --- a/docs/02-guides/tui-guide.md +++ b/docs/02-guides/tui-guide.md @@ -217,7 +217,7 @@ The detail panel shows where each credential has been accessed. - **Line number** (if available): File path with line number (e.g., `/path/file.go:42`) **Display Format**: -``` +```text Usage Locations: /home/user/projects/web-app Accessed: 12 times diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index a5ac5f62..b626b4a4 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -140,7 +140,7 @@ pass-cli init --no-recovery - You keep master password in another password manager - You prefer single point of failure (master password only) -For detailed recovery procedures, see [Recovery Phrase Guide](../../02-guides/recovery-phrase.md) and [Security Architecture](security-architecture.md#bip39-recovery-phrase). +For detailed recovery procedures, see [Recovery Phrase Guide](../02-guides/recovery-phrase.md) and [Security Architecture](security-architecture.md#bip39-recovery-phrase). #### Notes @@ -220,7 +220,7 @@ pass-cli add github \ When not using flags, you'll be prompted: -``` +```text Enter username: user@example.com Enter password: ******* (hidden input) Enter URL (optional): https://github.com @@ -302,7 +302,7 @@ pass-cli get github --masked #### Output Examples **Default output:** -``` +```text Service: github Username: user@example.com Password: mySecretPassword123! @@ -372,7 +372,7 @@ pass-cli list --unused --days 90 #### Output Examples **Table format (default):** -``` +```text +----------+----------------------+---------------------+ | SERVICE | USERNAME | LAST ACCESSED | +----------+----------------------+---------------------+ @@ -383,7 +383,7 @@ pass-cli list --unused --days 90 ``` **Simple format:** -``` +```text github aws-prod database @@ -468,7 +468,7 @@ pass-cli update github \ If no flags provided, prompts for password: -``` +```text Enter new password (leave blank to keep current): ******* Password updated successfully! ``` @@ -512,7 +512,7 @@ pass-cli delete github -f Without `--force`: -``` +```text Are you sure you want to delete 'github'? (yes/no): yes Credential 'github' deleted successfully! ``` @@ -567,7 +567,7 @@ pass-cli change-password --recover #### Interactive Flow **Normal password change:** -``` +```text 🔐 Change Master Password 📁 Vault location: /home/user/.pass-cli/vault.enc @@ -588,7 +588,7 @@ Confirm new master password: ******** ``` **Recovery flow with BIP39 phrase:** -``` +```text 🔐 Recover Vault Access 📁 Vault location: /home/user/.pass-cli/vault.enc @@ -751,12 +751,12 @@ pass-cli version --verbose #### Output Examples **Default:** -``` +```text pass-cli version X.Y.Z ``` **Verbose:** -``` +```text pass-cli version X.Y.Z commit: abc123f built: 2025-01-20T10:30:00Z @@ -820,7 +820,7 @@ pass-cli usage redis --format simple #### Output (Table Format) -``` +```text Usage History for 'github': Location Git Repo Last Access Count Fields @@ -858,7 +858,7 @@ Total accesses: 20 #### Output (Simple Format) -``` +```text /home/user/projects/webapp /home/user/projects/api-service /home/user/scripts @@ -919,7 +919,7 @@ pass-cli config init ``` **Output:** -``` +```text [OK] Configuration file created: /home/user/.pass-cli/config.yml Edit the file to customize your settings: @@ -981,7 +981,7 @@ pass-cli config validate ``` **Output (Valid):** -``` +```text [OK] Configuration is valid Settings: @@ -991,7 +991,7 @@ Settings: ``` **Output (Invalid):** -``` +```text [ERROR] Configuration has errors: Line 12: Invalid terminal width: 0 (must be between 1-10000) @@ -1028,7 +1028,7 @@ pass-cli config reset --force ``` **Output:** -``` +```text [WARNING] This will overwrite your current configuration. Are you sure you want to reset to defaults? (y/n): y @@ -1083,7 +1083,7 @@ pass-cli keychain enable --force ``` **Output:** -``` +```text Master password: ******** [OK] Keychain integration enabled for vault at /home/user/.pass-cli/vault.enc @@ -1114,7 +1114,7 @@ pass-cli keychain status **Output Examples:** **When keychain is enabled:** -``` +```text Keychain Status for /home/user/.pass-cli/vault.enc: [PASS] System Keychain: Available (keychain) @@ -1126,7 +1126,7 @@ Future commands will not prompt for password. ``` **When keychain is available but not enabled:** -``` +```text Keychain Status for /home/user/.pass-cli/vault.enc: [PASS] System Keychain: Available (wincred) @@ -1137,7 +1137,7 @@ Run 'pass-cli keychain enable' to store your password and skip future prompts. ``` **When keychain is not available:** -``` +```text Keychain Status for /home/user/.pass-cli/vault.enc: [FAIL] System Keychain: Not available on this platform @@ -1209,7 +1209,7 @@ pass-cli vault remove /path/to/vault.enc --force ``` **Output:** -``` +```text [WARNING] WARNING: This will permanently delete the vault and all stored credentials. Are you sure you want to remove /home/user/.pass-cli/vault.enc? (y/n): y @@ -1256,7 +1256,7 @@ pass-cli vault backup create --verbose ``` **Output:** -``` +```text [OK] Manual backup created successfully: /home/user/.pass-cli/vault.enc.20251112-143022.manual.backup Size: 2.45 MB @@ -1300,7 +1300,7 @@ pass-cli vault backup restore --verbose ``` **Output:** -``` +```text Found backup: /home/user/.pass-cli/vault.enc.20251112-143022.manual.backup Backup age: 2 hours ago Size: 2.45 MB @@ -1344,7 +1344,7 @@ pass-cli vault backup info --verbose ``` **Output:** -``` +```text 📦 Backup Status for: /home/user/.pass-cli/vault.enc Automatic Backup: @@ -1421,7 +1421,7 @@ PASS_AUDIT_LOG=/custom/audit.log pass-cli verify-audit #### Output (All Valid) -``` +```text 🔍 Verifying audit log: /home/user/.pass-cli/audit.log [OK] Audit log verification complete: @@ -1435,7 +1435,7 @@ Audit log integrity: VERIFIED [OK] #### Output (Tampered Detected) -``` +```text 🔍 Verifying audit log: /home/user/.pass-cli/audit.log [WARNING] Audit log verification failed: @@ -1506,7 +1506,7 @@ Review the log file and investigate the flagged entries. - `2` = Errors detected (action required) **Example Output**: -``` +```text Health Check Results ==================== diff --git a/docs/03-reference/security-architecture.md b/docs/03-reference/security-architecture.md index 7b28fa94..189cc021 100644 --- a/docs/03-reference/security-architecture.md +++ b/docs/03-reference/security-architecture.md @@ -57,7 +57,7 @@ Pass-CLI is designed with security as the primary concern. All credentials are e #### Key Derivation Process -``` +```text Master Key = PBKDF2( password = user's master password, salt = unique 32-byte random salt, @@ -86,22 +86,22 @@ Master Key = PBKDF2( #### Encrypting Credentials 1. **Generate Salt** (first time only) - ``` + ```text salt = crypto/rand.Read(32 bytes) ``` 2. **Derive Encryption Key** - ``` + ```text key = PBKDF2(master_password, salt, 600000, SHA256, 32) ``` 3. **Generate Nonce** - ``` + ```text nonce = crypto/rand.Read(12 bytes) // Per-encryption unique ``` 4. **Encrypt Data** - ``` + ```text ciphertext = AES-256-GCM.Encrypt( plaintext = JSON(credentials), key = derived_key, @@ -111,7 +111,7 @@ Master Key = PBKDF2( ``` 5. **Combine Components** - ``` + ```text vault_file = nonce || ciphertext || auth_tag ``` @@ -121,7 +121,7 @@ Master Key = PBKDF2( 2. **Read Vault File** and extract salt, nonce, ciphertext 3. **Derive Key** using PBKDF2 with stored salt 4. **Decrypt and Verify** - ``` + ```text plaintext = AES-256-GCM.Decrypt( ciphertext, key, @@ -271,7 +271,7 @@ pass-cli change-password --recover **Important**: Anyone with your 24-word phrase can access your vault. Protect it as carefully as your master password. -For detailed recovery procedures, see [Recovery Phrase Guide](../../02-guides/recovery-phrase.md). +For detailed recovery procedures, see [Recovery Phrase Guide](../02-guides/recovery-phrase.md). ## Data Storage Security @@ -289,7 +289,7 @@ Vault files are created with restricted permissions: ### Vault File Structure -``` +```text +------------------+ | Salt (32 bytes) | ← PBKDF2 salt +------------------+ diff --git a/docs/04-troubleshooting/vault.md b/docs/04-troubleshooting/vault.md index 7e079891..d4b1d13b 100644 --- a/docs/04-troubleshooting/vault.md +++ b/docs/04-troubleshooting/vault.md @@ -144,7 +144,7 @@ Set-Acl "$env:USERPROFILE\.pass-cli\vault.enc" $acl 3. If verification succeeds, you can set a new master password 4. Vault is re-encrypted with new password - For detailed recovery instructions, see [Recovery Phrase Guide](../../02-guides/recovery-phrase.md). + For detailed recovery instructions, see [Recovery Phrase Guide](../02-guides/recovery-phrase.md). 2. **Check keychain** (if still accessible) - macOS: Keychain Access → search "pass-cli" diff --git a/docs/05-operations/health-checks.md b/docs/05-operations/health-checks.md index 248d2599..163dde8f 100644 --- a/docs/05-operations/health-checks.md +++ b/docs/05-operations/health-checks.md @@ -36,7 +36,7 @@ pass-cli doctor Produces formatted output with status indicators: -``` +```text Health Check Results ==================== @@ -141,7 +141,7 @@ esac #### Update Available (Warning) **Symptom**: -``` +```text ⚠ Version: Update available: v1.2.3 → v1.2.4 Recommendation: Update to latest version: https://github.com/ari1110/pass-cli/releases/tag/v1.2.4 ``` @@ -151,7 +151,7 @@ esac #### Network Timeout (Pass with Error) **Symptom**: -``` +```text [PASS] Version: Current version: v1.2.3 (unable to check for updates: offline) ``` @@ -162,7 +162,7 @@ esac #### Vault Not Found (Error) **Symptom**: -``` +```text [FAIL] Vault: Vault file not found Recommendation: Run 'pass-cli init' to create a new vault ``` @@ -172,7 +172,7 @@ esac #### Permission Issues (Error) **Symptom**: -``` +```text [FAIL] Vault: Vault file has insecure permissions (644) Recommendation: Run 'chmod 600 /home/user/.pass-cli/vault.enc' ``` @@ -188,7 +188,7 @@ On Windows, ensure only your user account has read/write access. #### Vault Corrupted (Error) **Symptom**: -``` +```text [FAIL] Vault: Vault file is corrupted or tampered Recommendation: Restore from backup or reinitialize vault ``` @@ -203,7 +203,7 @@ On Windows, ensure only your user account has read/write access. #### Invalid Configuration (Error) **Symptom**: -``` +```text [FAIL] Config: Invalid YAML syntax at line 5 Recommendation: Fix configuration syntax or delete to use defaults ``` @@ -213,7 +213,7 @@ On Windows, ensure only your user account has read/write access. #### Missing Configuration (Pass) **Symptom**: -``` +```text [PASS] Config: Using default configuration ``` @@ -224,7 +224,7 @@ On Windows, ensure only your user account has read/write access. #### Keychain Unavailable (Warning) **Symptom**: -``` +```text ⚠ Keychain: OS keychain not available (running in SSH session) Recommendation: Use local environment or enable keychain access ``` @@ -238,7 +238,7 @@ On Windows, ensure only your user account has read/write access. #### Permission Denied (Error) **Symptom**: -``` +```text [FAIL] Keychain: Access denied by OS Recommendation: Grant keychain access in system settings ``` @@ -253,7 +253,7 @@ On Windows, ensure only your user account has read/write access. #### No Backups Found (Warning) **Symptom**: -``` +```text ⚠ Backup: No backup files found Recommendation: Backups are created automatically after modifications ``` @@ -263,7 +263,7 @@ On Windows, ensure only your user account has read/write access. #### Backup Integrity Issue (Warning) **Symptom**: -``` +```text ⚠ Backup: Backup file corrupted: vault.enc.backup.2 Recommendation: Remove corrupted backup or restore from valid backup ``` diff --git a/docs/05-operations/security-operations.md b/docs/05-operations/security-operations.md index 4aa5b383..53f6f1d3 100644 --- a/docs/05-operations/security-operations.md +++ b/docs/05-operations/security-operations.md @@ -11,7 +11,7 @@ Best practices, security checklist, incident response procedures, and security a ### Password Management 1. **Strong Master Password** - ``` + ```text [OK] Good: "correct-horse-battery-staple-29!" (33 chars) [OK] Good: "MyD0g!sN@med$potAnd1L0veH1m" (29 chars) [ERROR] Bad: "password123" (11 chars, common) @@ -110,7 +110,7 @@ Best practices, security checklist, incident response procedures, and security a 2. **File System Security** - Don't commit vault to version control - Add to `.gitignore`: - ``` + ```ini .pass-cli/ *.enc ``` diff --git a/docs/06-development/branch-workflow.md b/docs/06-development/branch-workflow.md index 16425267..b6f80142 100644 --- a/docs/06-development/branch-workflow.md +++ b/docs/06-development/branch-workflow.md @@ -148,12 +148,12 @@ The release workflow will: ## CI/CD Pipeline ### On Feature Branch Push -``` +```text Feature branch push → No CI (saves compute time) ``` ### On PR to `main` -``` +```text PR created → CI runs automatically (lint, tests, security, build) → PR shows CI status → Merge blocked until CI passes @@ -162,12 +162,12 @@ PR created → CI runs automatically (lint, tests, security, build) **Smart filtering**: CI skips test jobs when only non-code files change (docs/, specs/, .md files). ### On Merge to `main` -``` +```text PR merged → main branch updated → CI runs on main (verification) ``` ### On Release Tag -``` +```text Tag pushed to main (v*) → Release workflow runs → Build binaries for all platforms → diff --git a/docs/06-development/contributing.md b/docs/06-development/contributing.md index c8adc597..a289a588 100644 --- a/docs/06-development/contributing.md +++ b/docs/06-development/contributing.md @@ -315,7 +315,7 @@ func GeneratePassword(length int, opts PasswordOptions) (string, error) { ## Project Structure -``` +```text pass-cli/ ├── cmd/ # Cobra command definitions │ ├── root.go # Root command @@ -469,7 +469,7 @@ For questions or discussions, visit [GitHub Discussions](https://github.com/ari1 - **Issues**: [GitHub Issues](https://github.com/ari1110/pass-cli/issues) - **Discussions**: [GitHub Discussions](https://github.com/ari1110/pass-cli/discussions) -- **Documentation**: [docs/](.) +- **Documentation**: [docs/](../) ## Resources diff --git a/docs/06-development/documentation-lifecycle.md b/docs/06-development/documentation-lifecycle.md index 9388be80..a7f9e78f 100644 --- a/docs/06-development/documentation-lifecycle.md +++ b/docs/06-development/documentation-lifecycle.md @@ -137,7 +137,7 @@ Documentation should be archived/removed when ANY of these conditions occur: 7. **PR**: Submit as atomic change (one doc per PR when possible) **Commit Message Format**: -``` +```text docs: archive - Rationale: @@ -153,7 +153,7 @@ Accessible via git history at commit if recovery needed. **Default**: DO NOT archive specs (Rule 1: indefinite retention) **Exception**: If spec created in error: -``` +```text docs: remove incorrect spec 042 - created in wrong repository Rationale: Spec 042 documented feature for pass-cli-gui project, @@ -172,7 +172,7 @@ Correct spec exists at pass-cli-gui repo. 7. **Commit**: One commit per consolidated topic **Commit Message Format**: -``` +```text docs: consolidate documentation into - Merged content from , , @@ -191,7 +191,7 @@ Reduces duplicate maintenance and improves search clarity. 4. **Document**: Note link fixes in commit message **Commit Message Format**: -``` +```text docs: fix broken links in - Updated internal links (file moves) From 2c21b8c3a29029a9ac7ca5d1a424653538e42455 Mon Sep 17 00:00:00 2001 From: Ari Date: Fri, 28 Nov 2025 23:32:20 -0500 Subject: [PATCH 07/19] docs: fix doc-manager configuration and regenerate baselines Configuration Updates: - Update sources to use glob patterns (cmd/**/*.go, internal/**/*.go, *.go) - Fix doc_mappings paths to match numbered directory structure - cli: docs/03-reference/command-reference.md - api: docs/03-reference/security-architecture.md - config: docs/03-reference/configuration.md - dependency: docs/01-getting-started/manual-install.md - infrastructure: docs/06-development/ci-cd.md Baseline Regeneration: - Created symbol-baseline.json (591 symbols tracked) - Updated repo-baseline.json (322 files tracked) - Updated dependencies.json (0 dependencies) This addresses the missing symbol-baseline.json file that should have been created during initial setup. Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager.yml | 15 +- .doc-manager/dependencies.json | 409 +- .doc-manager/memory/repo-baseline.json | 175 +- .doc-manager/memory/symbol-baseline.json | 6956 ++++++++++++++++++++++ 4 files changed, 7413 insertions(+), 142 deletions(-) create mode 100644 .doc-manager/memory/symbol-baseline.json diff --git a/.doc-manager.yml b/.doc-manager.yml index 074c1897..01792cca 100644 --- a/.doc-manager.yml +++ b/.doc-manager.yml @@ -5,16 +5,17 @@ exclude: - vendor/* - test/* sources: -- cmd -- internal +- cmd/**/*.go +- internal/**/*.go +- '*.go' docs_path: docs use_gitignore: true doc_mappings: - cli: docs/reference/command-reference.md - api: docs/reference/api.md - config: docs/reference/configuration.md - dependency: docs/getting-started/installation.md - infrastructure: docs/development/ci-cd.md + cli: docs/03-reference/command-reference.md + api: docs/03-reference/security-architecture.md + config: docs/03-reference/configuration.md + dependency: docs/01-getting-started/manual-install.md + infrastructure: docs/06-development/ci-cd.md metadata: language: Go created: '2025-11-28T23:13:03.879609' diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json index b9fad34c..3f32cfe3 100644 --- a/.doc-manager/dependencies.json +++ b/.doc-manager/dependencies.json @@ -1,40 +1,381 @@ { - "generated_at": "2025-11-28T23:13:06.481603", + "generated_at": "2025-11-28T23:31:54.774328", "doc_to_code": { - "01-getting-started/manual-install.md": [], - "01-getting-started/quick-install.md": [], - "01-getting-started/quick-start.md": [], - "02-guides/backup-restore.md": [], - "02-guides/basic-workflows.md": [], - "02-guides/keychain-setup.md": [], - "02-guides/recovery-phrase.md": [], - "02-guides/scripting-guide.md": [], - "02-guides/tui-guide.md": [], - "02-guides/usage-tracking.md": [], + "01-getting-started/manual-install.md": [ + "cmd/init.go", + "cmd/version.go" + ], + "01-getting-started/quick-install.md": [ + "cmd/version.go" + ], + "01-getting-started/quick-start.md": [ + "cmd/add.go", + "cmd/delete.go", + "cmd/doctor.go", + "cmd/get.go", + "cmd/init.go", + "cmd/list.go", + "cmd/update.go", + "cmd/version.go" + ], + "02-guides/backup-restore.md": [ + "cmd/doctor.go", + "cmd/vault_backup_create.go", + "cmd/vault_backup_info.go", + "cmd/vault_backup_restore.go" + ], + "02-guides/basic-workflows.md": [ + "cmd/doctor.go", + "cmd/generate.go", + "cmd/keychain_enable.go", + "cmd/keychain_status.go", + "cmd/list.go", + "cmd/tui.go", + "cmd/tui/app.go", + "cmd/tui/components/detail.go", + "cmd/tui/components/forms.go", + "cmd/tui/components/sidebar.go", + "cmd/tui/components/statusbar.go", + "cmd/tui/components/table.go", + "cmd/tui/events/focus.go", + "cmd/tui/events/handlers.go", + "cmd/tui/layout/manager.go", + "cmd/tui/layout/pages.go", + "cmd/tui/main.go", + "cmd/tui/models/navigation.go", + "cmd/tui/models/search.go", + "cmd/tui/models/state.go", + "cmd/tui/styles/theme.go" + ], + "02-guides/keychain-setup.md": [ + "cmd/doctor.go", + "cmd/keychain_enable.go", + "cmd/keychain_status.go", + "cmd/tui.go", + "cmd/tui/app.go", + "cmd/tui/components/detail.go", + "cmd/tui/components/forms.go", + "cmd/tui/components/sidebar.go", + "cmd/tui/components/statusbar.go", + "cmd/tui/components/table.go", + "cmd/tui/events/focus.go", + "cmd/tui/events/handlers.go", + "cmd/tui/layout/manager.go", + "cmd/tui/layout/pages.go", + "cmd/tui/main.go", + "cmd/tui/models/navigation.go", + "cmd/tui/models/search.go", + "cmd/tui/models/state.go", + "cmd/tui/styles/theme.go" + ], + "02-guides/recovery-phrase.md": [ + "cmd/init.go" + ], + "02-guides/scripting-guide.md": [ + "cmd/list.go" + ], + "02-guides/tui-guide.md": [ + "cmd/get.go", + "cmd/list.go" + ], + "02-guides/usage-tracking.md": [ + "cmd/list.go" + ], "03-reference/_index.md": [], - "03-reference/command-reference.md": [], + "03-reference/command-reference.md": [ + "cmd/add.go", + "cmd/config.go", + "cmd/delete.go", + "cmd/doctor.go", + "cmd/generate.go", + "cmd/get.go", + "cmd/init.go", + "cmd/keychain.go", + "cmd/keychain_enable.go", + "cmd/keychain_status.go", + "cmd/list.go", + "cmd/update.go", + "cmd/usage.go", + "cmd/vault.go", + "cmd/vault_backup.go", + "cmd/vault_backup_create.go", + "cmd/vault_backup_info.go", + "cmd/vault_backup_restore.go", + "cmd/vault_remove.go", + "cmd/version.go" + ], "03-reference/configuration.md": [], - "03-reference/known-limitations.md": [], - "03-reference/migration.md": [], - "03-reference/security-architecture.md": [], - "04-troubleshooting/faq.md": [], - "04-troubleshooting/installation.md": [], - "04-troubleshooting/keychain.md": [], - "04-troubleshooting/tui.md": [], - "04-troubleshooting/vault.md": [], - "05-operations/health-checks.md": [], - "05-operations/security-operations.md": [], + "03-reference/known-limitations.md": [ + "cmd/init.go" + ], + "03-reference/migration.md": [ + "cmd/generate.go", + "cmd/init.go", + "cmd/list.go" + ], + "03-reference/security-architecture.md": [ + "cmd/init.go" + ], + "04-troubleshooting/faq.md": [ + "cmd/list.go" + ], + "04-troubleshooting/installation.md": [ + "cmd/init.go", + "cmd/list.go", + "cmd/version.go" + ], + "04-troubleshooting/keychain.md": [ + "cmd/init.go" + ], + "04-troubleshooting/tui.md": [ + "cmd/get.go", + "cmd/list.go", + "cmd/tui.go", + "cmd/tui/app.go", + "cmd/tui/components/detail.go", + "cmd/tui/components/forms.go", + "cmd/tui/components/sidebar.go", + "cmd/tui/components/statusbar.go", + "cmd/tui/components/table.go", + "cmd/tui/events/focus.go", + "cmd/tui/events/handlers.go", + "cmd/tui/layout/manager.go", + "cmd/tui/layout/pages.go", + "cmd/tui/main.go", + "cmd/tui/models/navigation.go", + "cmd/tui/models/search.go", + "cmd/tui/models/state.go", + "cmd/tui/styles/theme.go" + ], + "04-troubleshooting/vault.md": [ + "cmd/init.go", + "cmd/list.go" + ], + "05-operations/health-checks.md": [ + "cmd/doctor.go", + "cmd/init.go" + ], + "05-operations/security-operations.md": [ + "cmd/generate.go", + "cmd/init.go", + "cmd/list.go", + "cmd/version.go" + ], "06-development/branch-workflow.md": [], "06-development/ci-cd.md": [], - "06-development/contributing.md": [], + "06-development/contributing.md": [ + "cmd/add.go", + "cmd/init.go", + "cmd/root.go" + ], "06-development/documentation-lifecycle.md": [], - "06-development/homebrew.md": [], + "06-development/homebrew.md": [ + "cmd/version.go" + ], "06-development/release.md": [], - "06-development/scoop.md": [], + "06-development/scoop.md": [ + "cmd/version.go" + ], "_index.md": [], "README.md": [] }, - "code_to_doc": {}, + "code_to_doc": { + "cmd/init.go": [ + "01-getting-started/manual-install.md", + "01-getting-started/quick-start.md", + "02-guides/recovery-phrase.md", + "03-reference/command-reference.md", + "03-reference/known-limitations.md", + "03-reference/migration.md", + "03-reference/security-architecture.md", + "04-troubleshooting/installation.md", + "04-troubleshooting/keychain.md", + "04-troubleshooting/vault.md", + "05-operations/health-checks.md", + "05-operations/security-operations.md", + "06-development/contributing.md" + ], + "cmd/version.go": [ + "01-getting-started/manual-install.md", + "01-getting-started/quick-install.md", + "01-getting-started/quick-start.md", + "03-reference/command-reference.md", + "04-troubleshooting/installation.md", + "05-operations/security-operations.md", + "06-development/homebrew.md", + "06-development/scoop.md" + ], + "cmd/add.go": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md", + "06-development/contributing.md" + ], + "cmd/delete.go": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "cmd/doctor.go": [ + "01-getting-started/quick-start.md", + "02-guides/backup-restore.md", + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md", + "05-operations/health-checks.md" + ], + "cmd/get.go": [ + "01-getting-started/quick-start.md", + "02-guides/tui-guide.md", + "03-reference/command-reference.md", + "04-troubleshooting/tui.md" + ], + "cmd/list.go": [ + "01-getting-started/quick-start.md", + "02-guides/basic-workflows.md", + "02-guides/scripting-guide.md", + "02-guides/tui-guide.md", + "02-guides/usage-tracking.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "04-troubleshooting/faq.md", + "04-troubleshooting/installation.md", + "04-troubleshooting/tui.md", + "04-troubleshooting/vault.md", + "05-operations/security-operations.md" + ], + "cmd/update.go": [ + "01-getting-started/quick-start.md", + "03-reference/command-reference.md" + ], + "cmd/vault_backup_create.go": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "cmd/vault_backup_info.go": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "cmd/vault_backup_restore.go": [ + "02-guides/backup-restore.md", + "03-reference/command-reference.md" + ], + "cmd/generate.go": [ + "02-guides/basic-workflows.md", + "03-reference/command-reference.md", + "03-reference/migration.md", + "05-operations/security-operations.md" + ], + "cmd/keychain_enable.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md" + ], + "cmd/keychain_status.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md" + ], + "cmd/tui.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/app.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/components/detail.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/components/forms.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/components/sidebar.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/components/statusbar.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/components/table.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/events/focus.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/events/handlers.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/layout/manager.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/layout/pages.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/main.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/models/navigation.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/models/search.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/models/state.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/tui/styles/theme.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "04-troubleshooting/tui.md" + ], + "cmd/config.go": [ + "03-reference/command-reference.md" + ], + "cmd/keychain.go": [ + "03-reference/command-reference.md" + ], + "cmd/usage.go": [ + "03-reference/command-reference.md" + ], + "cmd/vault.go": [ + "03-reference/command-reference.md" + ], + "cmd/vault_backup.go": [ + "03-reference/command-reference.md" + ], + "cmd/vault_remove.go": [ + "03-reference/command-reference.md" + ], + "cmd/root.go": [ + "06-development/contributing.md" + ] + }, "unmatched_references": { "checksums.txt": [ "01-getting-started/manual-install.md", @@ -115,10 +456,6 @@ "01-getting-started/quick-start.md", "03-reference/command-reference.md" ], - "init": [ - "01-getting-started/quick-start.md", - "06-development/contributing.md" - ], "pass-cli get github": [ "01-getting-started/quick-start.md", "02-guides/basic-workflows.md", @@ -307,9 +644,6 @@ "by": [ "03-reference/command-reference.md" ], - "get": [ - "03-reference/command-reference.md" - ], "windows": [ "03-reference/command-reference.md" ], @@ -503,9 +837,6 @@ "pass-cli list # This is CLI mode": [ "04-troubleshooting/tui.md" ], - "doctor": [ - "05-operations/health-checks.md" - ], "complete": [ "05-operations/health-checks.md", "_index.md", @@ -545,12 +876,6 @@ "cobra": [ "06-development/contributing.md" ], - "root": [ - "06-development/contributing.md" - ], - "add": [ - "06-development/contributing.md" - ], "docs": [ "06-development/documentation-lifecycle.md" ], diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json index 90213e52..4e16c4fb 100644 --- a/.doc-manager/memory/repo-baseline.json +++ b/.doc-manager/memory/repo-baseline.json @@ -5,26 +5,22 @@ "docs_exist": true, "docs_path": "docs", "metadata": { - "git_commit": "980af9d1a4464a7036bcb65876d33a11dde9f783", + "git_commit": "e700033bb40bd35669f503ccf758921750e4d125", "git_branch": "docs/review-with-doc-manager" }, - "timestamp": "2025-11-28T23:13:06.181550", + "timestamp": "2025-11-28T23:31:53.613984", "version": "1.0.0", - "file_count": 333, + "file_count": 322, "files": { - ".doc-manager.yml": "f2a333ecb9829ee6478f5fe190707babc43a1534a3047b3b2977045095e590cc", - ".github/dependabot.yml": "578b858b08141f08e00a144c35b208f32075d2f40305111a5d970e8d6ac9ef65", - ".github/workflows/ci.yml": "081a8464d550c347fa4af32c4666490d744aad2d9d945f36019c353a26f87a56", - ".github/workflows/docs-validation.yml": "259dff44c43e69dfa78cc3624bdfc956d5f1b895b2798e45e1677d1be86ba2f7", - ".github/workflows/pages.yml": "26a69d51de2e00b38fece64609190cbd9024732789542dd71e730acc783b9962", - ".github/workflows/pr-validation.yml": "7550573b5946b83748efd0294c7e2f076979a14f4a9a4b3adfa474bd5ba14d8f", - ".github/workflows/release.yml": "89d248b668e4d1c151b7c0b3cb04e8e311fb9f75fe4b066028749f71b9ec0cbb", - ".github/workflows/security-scan.yml": "be292d32d6f223052450ddf86a0a935002f8e41e29a5d46f5f05da39fb6ffea0", - ".gitignore": "dfa96d75bf0c48313b8567ae2313fef553925bd38ba9d73f47dd926c7aa5326d", - ".goreleaser.yml": "180c963b45edfebc6e6a1218e00e33953ec850270f4703595956ec9a2d324997", - ".markdownlint.json": "9b4b2ad4dd10efd42a4af14c5e6f0675b22ccc3eedd378d9075162cd692549ae", "CHANGELOG.md": "d72447f51be5bf54e38a8802bf7db155b85c877555e7e74f07e117b99b91c638", "CLAUDE.md": "2bcc51fedb86dc1c1b0b303dffade31cb68e8727403a94060d7631b5cb656116", + "CONTRIBUTING.md": "1e4e9c95ebddb6b6fc7ef3fc9bbf1f634c9908230d6663101132d5a83d430c5b", + "go.mod": "1a3ffdc928ab7415386b9c8bfbe9b24cdac2d67f54f12f4ad5953687828312b6", + "go.sum": "e12956337ce5b0c90e0f137f3051838935003455109513e8696ea006fac3c3e7", + "LICENSE": "a66c73aa52d80b8e6287af2d3b4ed036ceb2f9decb540ed411cccc7a39ad215b", + "main.go": "b9d587d7c749d5b70b152fe8dc42f727b213ca765ac8507359ea4b5b5ce6d374", + "README.md": "3b05f3537f17c075a92980d2267d31e0b9c9f74236bcd63067c296dd07d63a15", + "SECURITY.md": "46b11317eb0c8d8efe21f891060dd4c722d973c8debf7c89fefa99b8d829ccf2", "cmd/add.go": "5bb7d5bbee88304fa8cdfe3c268baedd8805610030aa98740575fdb11983f11e", "cmd/change_password.go": "8355659b5a9bf4693d81092b03ad7d936c6043207b97c4dcea02e7cbf0386e2f", "cmd/config.go": "ea9810cf6f4dbcc93ffc53bfb34ce2dcb4d93a90e48b230ade4036c728cd1fad", @@ -39,7 +35,19 @@ "cmd/keychain_status.go": "d407c0e680323c5003dcddbd25f1ea4baa26497ff8281aa69b64dd1ab3ebd83b", "cmd/list.go": "89da75775a8915a2150f4c6663dc12ae0677e01d116301cfcadfef7390cabade", "cmd/root.go": "0098285b3013b3ac2978f8eed91a799d1af689693dc397479ba1e194db25a253", + "cmd/tui.go": "2c598900b4cc5be38f699ea21d13f18f1f296b181cce127f3dbd8eb5f9a1229d", + "cmd/update.go": "044717de710142b86d3d8d53c77a88d1723ff87520c2efda8876f4d1fb0fc604", + "cmd/usage.go": "8c8b38a6706e5d6b85f468170ffeaea4e17433164d0e30cae33402af906cac3f", + "cmd/vault.go": "a5774e7025de9475854a364e0593f31fdad41d29eff8e36396d1b9d6d3a415dd", + "cmd/vault_backup.go": "588881f8dad1c7a1c71cb91907ccc70cad951f417c001f46d4fc9c49e16b22e9", + "cmd/vault_backup_create.go": "4999983a3efd5f74ce89c576935a5ce5ddfac76f0aa25e2bf8ee73446bdf123c", + "cmd/vault_backup_info.go": "a808402b4766bd95bdc84d5c08b0700f19d1faa8b1ce006ddd1758fad40efaf4", + "cmd/vault_backup_restore.go": "df31f93339b74155363f0faa119c2e6ed1baeda50641d5f28c0a73944ccd454e", + "cmd/vault_remove.go": "9cb61bb2b409acfc266a51e28cd1002d7f52338a4798ddff83da1987025ea612", + "cmd/verify_audit.go": "013727a6064c86cb0e7136fbc4ac976a7738d3bd200ae9d6533152206fb675a2", + "cmd/version.go": "ccbe76818fdf4173438824a2976bf3a82f912767f752915453dd9a38d5eaa10d", "cmd/tui/app.go": "43eeb51b0b40a715b8476c0e97e4bc822d70791f5c857bff8c5d7354c058c457", + "cmd/tui/main.go": "ee842e04c166c95c71427f31fb379d5c95a41feaee12f82bee1e1cf9b5a38c3a", "cmd/tui/components/detail.go": "db5d898aba779de1ad007aa44ede9c1e0715e873ab6e384b4c042420141d2075", "cmd/tui/components/forms.go": "f360218d34b6c9951a6ab3de2529089bb8cceb039e7559a0d0cc7d7877e04261", "cmd/tui/components/sidebar.go": "f7991b7eddaa2b9e3c75ae80f61cde53f1518bafa9621397ec7924872f79893e", @@ -49,67 +57,52 @@ "cmd/tui/events/handlers.go": "9e7ef5f9b8ffb2ed0ee33bfc728d88b92b2685208d08c8892e4d15162aae5863", "cmd/tui/layout/manager.go": "0e31721268f04f7e06854fba0e9b42c4ee8e727860f21173b2212da53bd7931c", "cmd/tui/layout/pages.go": "21ee8b0987cd7dab996118281d47bc280b2a5e204ef523d1944fb368a9f8511a", - "cmd/tui/main.go": "ee842e04c166c95c71427f31fb379d5c95a41feaee12f82bee1e1cf9b5a38c3a", "cmd/tui/models/navigation.go": "88e5a7903d63eea25200be42ee3e1967c46eb18e9519d4bff1751d58ab9be1b6", "cmd/tui/models/search.go": "baf4867219d8f1a6d2851a25240ef00de14a961ece1ef91693f0afe9204a3b99", "cmd/tui/models/state.go": "2dcff4b9218d00025b0ee7b3e2f876dd21b14ce34eef6f9ba77d4012e1e2ec59", "cmd/tui/styles/theme.go": "5713de3928333c8161eabebd093f61cd8d1a92c504c10913f2fbdae07444e398", - "cmd/tui.go": "2c598900b4cc5be38f699ea21d13f18f1f296b181cce127f3dbd8eb5f9a1229d", - "cmd/update.go": "044717de710142b86d3d8d53c77a88d1723ff87520c2efda8876f4d1fb0fc604", - "cmd/usage.go": "8c8b38a6706e5d6b85f468170ffeaea4e17433164d0e30cae33402af906cac3f", - "cmd/vault.go": "a5774e7025de9475854a364e0593f31fdad41d29eff8e36396d1b9d6d3a415dd", - "cmd/vault_backup.go": "588881f8dad1c7a1c71cb91907ccc70cad951f417c001f46d4fc9c49e16b22e9", - "cmd/vault_backup_create.go": "4999983a3efd5f74ce89c576935a5ce5ddfac76f0aa25e2bf8ee73446bdf123c", - "cmd/vault_backup_info.go": "a808402b4766bd95bdc84d5c08b0700f19d1faa8b1ce006ddd1758fad40efaf4", - "cmd/vault_backup_restore.go": "df31f93339b74155363f0faa119c2e6ed1baeda50641d5f28c0a73944ccd454e", - "cmd/vault_remove.go": "9cb61bb2b409acfc266a51e28cd1002d7f52338a4798ddff83da1987025ea612", - "cmd/verify_audit.go": "013727a6064c86cb0e7136fbc4ac976a7738d3bd200ae9d6533152206fb675a2", - "cmd/version.go": "ccbe76818fdf4173438824a2976bf3a82f912767f752915453dd9a38d5eaa10d", - "CONTRIBUTING.md": "1e4e9c95ebddb6b6fc7ef3fc9bbf1f634c9908230d6663101132d5a83d430c5b", + "docs/README.md": "19b0908283717cec8a16127f5480a4398ea0318f408db0ca00e32690f1faa792", + "docs/_index.md": "deb6746b1bfe87dcfd60c12d95c58145425f9ca8ade8e6f08af6f837eea0bdf3", "docs/01-getting-started/manual-install.md": "8e172bdaf1ae86107d6a9101713c00e3f409b6eda6ec67d97a0e53d719c054ff", "docs/01-getting-started/quick-install.md": "776259dee84c9e2f074a590b79b2c484e64bdd5f977cce016dbf3df77d899b5e", "docs/01-getting-started/quick-start.md": "76100d9574216c50a4ec25bba6f96100937db004fa2a01be4d72c450abd1840e", "docs/01-getting-started/uninstall.md": "c7b3686bb8920dcd1a2912d76cb9fbc401e3a1fb31f16cc86f9db5b64b04068f", "docs/01-getting-started/_index.md": "24f76b99f8c6796d7dea7c50928a33938897d06a8b491c4906209612adfc25f6", "docs/02-guides/backup-restore.md": "4125f87bf4b941b323e72e0cab99212f68be9ee551b5b5dfd32b5fdc5728c929", - "docs/02-guides/basic-workflows.md": "abf673effd5f7048084f6933bfdb965a3d2927c8eec96cca0d24d7ffcf54945f", - "docs/02-guides/keychain-setup.md": "5dd994d202f22dca26ff8155ed08600bb634d4da51623ceeadd43608cb6bb8fb", + "docs/02-guides/basic-workflows.md": "12b41a6ddec42e4b9a5027167e2a6b8b98bcd746d5a2e6c0c2d3a49aa0e5a1b8", + "docs/02-guides/keychain-setup.md": "27e2499dab96d5cf776be1ea585cb378b2db80d7d44c21bb8820d2ca73ff0980", "docs/02-guides/recovery-phrase.md": "35dd31c9f3b4d043f0058626f8c7307d66b1886b9b3c34fc65d9c7352ff70c1b", "docs/02-guides/scripting-guide.md": "9996c8f7dd8a102a2091cf975d57dcf73edf6638e3be13e47db98e3f6fd61a93", - "docs/02-guides/tui-guide.md": "505bddca3ee2e580e6c1aae8767aee0743b68bdd0e57c1703936b55b5f551159", + "docs/02-guides/tui-guide.md": "e5837f5368e3fad5a2ae359a071b8d6cee7bc6cc1950fc0d0d4060694d32c457", "docs/02-guides/usage-tracking.md": "4ba15ce03bc86f33db7e4e6f0613c3a7984f6a5ce247c7318acf26e6783e68ed", "docs/02-guides/_index.md": "c6dd48a1975eda4610622424ba76f710bf05f94fe0a6bebe418addab4313ab06", - "docs/03-reference/command-reference.md": "51a4bc3f58dbff04ea871a72cba7e7f19839df579a2b693e50d37137167496b1", + "docs/03-reference/command-reference.md": "c5b06b9159b7198e99f4fde070530a32c222c45eb10519c4c6565836cdabe603", "docs/03-reference/configuration.md": "c10573f971340d1c69730d09119b59fb6d7e95d376ac648cd407644288278b71", "docs/03-reference/known-limitations.md": "cf6fc6396a8fb23a71da49b3703010c1c1a1158c36d16377539c9aa51dda396e", "docs/03-reference/migration.md": "06879f2e2c5440954cce7292608be366e6859e8608c4449ff6e9adce9e5d4e7c", - "docs/03-reference/security-architecture.md": "49576745392292fcd36563ca9584a5e738d47e2d62faa11659a986ff7deb33aa", + "docs/03-reference/security-architecture.md": "be33c6836a5eaf961146b4d39c5100d762ac514b40509c121331fe7d34877b2c", "docs/03-reference/_index.md": "7f4375eb417603299a10f5b5514efec9375ecf0dbe5aac25bd10cb8d4d962703", "docs/04-troubleshooting/faq.md": "0f7a67ba120e9649473b0308ce1e5fb4260b4a90eb77382f00fa8557cf4b31ff", "docs/04-troubleshooting/installation.md": "241bb4919f0dfc69c8f7779ba7c9784845c09936a8a477832d423f4f3ce54c60", "docs/04-troubleshooting/keychain.md": "203d54aa1ebfc1367e2a5d4c11d0390f3893a1be780abb06d1efd15cdbcbe8e7", "docs/04-troubleshooting/tui.md": "a0f13894c2cbca0035dc18ae468551193342332d51c988ed72e9c2b52eaff6e6", - "docs/04-troubleshooting/vault.md": "be949443c1c9ad81156a27b2474a41d46faa691b977a9f33168ed971673ef321", + "docs/04-troubleshooting/vault.md": "33d278ee3abc27044147b4807ad5f2b56df7e316adc110297058825c0d688add", "docs/04-troubleshooting/_index.md": "c9bed28801a06cf760d45358f8449fb9f73a227efae934cbd76700e335a14b18", - "docs/05-operations/health-checks.md": "e7cb30c57d814c81c520593e30fe65ac3374d09b169b274fb400fc9fc3f35588", - "docs/05-operations/security-operations.md": "4071312ed878eabe5e87c34173df0a546f0e453e91d178a2d110d9b43f3b5e23", + "docs/05-operations/health-checks.md": "9f73563c7de7e79434851037aec4429adf27b6c2137b41f5a24e40e6edf4a01f", + "docs/05-operations/security-operations.md": "4f0823dc99fb74ecae7921e11b09166dfc1ee4dc0ad69136838561e71014bbf2", "docs/05-operations/_index.md": "1b243fc3b06e3c9218c76a6fae1ce9fe16c995c9d7fb486a0ad9e3ad8b0f74e1", - "docs/06-development/branch-workflow.md": "b9b8b1ae0bf3b9e8fef86f40ab9ecc6b8662be9e68bf2ae7a797033d354741f7", + "docs/06-development/branch-workflow.md": "92f84804fd7a21d929070b423e159a47ea4b10649b562791cbf90b8995408fd9", "docs/06-development/ci-cd.md": "4c46a06f4b09ac02ffea3c00ab78a69d3ede84128cd8202c01fb3c1673e567b8", - "docs/06-development/contributing.md": "c578ab3330adeb2dd120cada0cdb987656647e2101d2a5b6f9efe90b30dc8c83", - "docs/06-development/documentation-lifecycle.md": "e75c85dbe94851d88dc7e7eeb7ffb86dbeeb08c0f4066d3b7b7db63e7aaa3bc0", + "docs/06-development/contributing.md": "949c10367afbeb5dca927e22b0210d6617f383d36d62019d458e502e43dcbb76", + "docs/06-development/documentation-lifecycle.md": "0fdad2b45406ac401c2b8085aee44521fff5215b76eeb14cb765ea02a80352cd", "docs/06-development/homebrew.md": "6b5cae03d66e72a7cebb88951eaafc8706a078aa3abc799ffd60a3eb5183b54d", "docs/06-development/release.md": "1476afcf264708f5146669ac50aec037f51255cde6f92401e20a50cf1eaaa48d", "docs/06-development/scoop.md": "0ca35b10cb16cfe0703dbddcba3592185d8523ee98a5a765381af676d012697e", "docs/06-development/_index.md": "0c42aa905b325d11412f118dddb08592ba6691f3f843356c5217c7fb1d32995f", - "docs/README.md": "19b0908283717cec8a16127f5480a4398ea0318f408db0ca00e32690f1faa792", - "docs/_index.md": "deb6746b1bfe87dcfd60c12d95c58145425f9ca8ade8e6f08af6f837eea0bdf3", "docsite/go.mod": "3a00b8ca7f8c1f0dbc8059d602ad62f6270f83b632d9ce6146b39ae0f82cafc7", "docsite/go.sum": "f77fa4d8c436f59bf47fced4c59314ec7404d8c214e4f08c30762d2654b7d258", "docsite/hugo.yaml": "ab82f93b5e6804fdcefa4d9700d03cef5eb9fe8fb54769556f9fe92e11e4caca", "docsite/layouts/_default/_markup/render-link.html": "21b2c86abd5bb3125b3574d1b162e14ccc3581d92ab5204a05b43b2290c7f935", - "go.mod": "1a3ffdc928ab7415386b9c8bfbe9b24cdac2d67f54f12f4ad5953687828312b6", - "go.sum": "e12956337ce5b0c90e0f137f3051838935003455109513e8696ea006fac3c3e7", "homebrew/pass-cli.rb": "8a0698d414be4c3eb02eb1db29c6d840a546405ea205298f24abb81f38d87308", "internal/config/config.go": "4bdf7fd0dee283c655ec8525772b2292eee5290780197ba8d491bb05ef9f1b63", "internal/config/keybinding.go": "339aef6ebe15ba93c8d99ae33470819a76469eb175eaef02a5392bbb7430c133", @@ -141,27 +134,21 @@ "internal/vault/firstrun.go": "575f5ce7ae8a26f53c0b2ead4f12ff172c718384c5ef8bc8a6ab11410ea48cfa", "internal/vault/metadata.go": "94cbf40d6c6f7897c058d1bdfbdca8379b0063c66ee91b4575c2b5a48c90a304", "internal/vault/vault.go": "1bcac600b2125c87e83915b6ea8458980dd1b3ee134d8b47a1735f0738dc6d3e", - "LICENSE": "a66c73aa52d80b8e6287af2d3b4ed036ceb2f9decb540ed411cccc7a39ad215b", - "main.go": "b9d587d7c749d5b70b152fe8dc42f727b213ca765ac8507359ea4b5b5ce6d374", "manifests/snap/README.md": "e395fff58a46147995b5e4aaf981f624b615b4dba8b3ccac3bb65fb582bb3d7d", "manifests/winget/pass-cli.yaml": "c4a88dcb7b345331bd742c5663692abe861237bef3c6903aeb16e7773837fe3a", "manifests/winget/README.md": "e8ef23efb46f2e5c5dad763e0ea17fd710ed38aeaeb2b7def28e7dd0fc45f37f", - "README.md": "3b05f3537f17c075a92980d2267d31e0b9c9f74236bcd63067c296dd07d63a15", "scoop/pass-cli.json": "35b1c6462993e009b89a98ff3303e44c663a89681c19592e1576ca8d3a7213ec", - "SECURITY.md": "46b11317eb0c8d8efe21f891060dd4c722d973c8debf7c89fefa99b8d829ccf2", - "specs/archive/001-add-manual-vault/checklists/requirements.md": "85ab994ef29fae0d0083bd0b1dd34fa1edc7ee442904279b1c140241959991ad", - "specs/archive/001-add-manual-vault/contracts/backup-create.md": "e928793fb396f7adeec5075726e459994ec443f8fde89de83cb5a2fec5ed3db5", - "specs/archive/001-add-manual-vault/contracts/backup-info.md": "47b763b52a7d1785f9c0debc682a82b578eec1e45fe6b2e4724ea4fed216ff4a", - "specs/archive/001-add-manual-vault/contracts/backup-restore.md": "47418485bae535c22cfade20b532e3a96e1ee381cb2ae46d4067671409f57bcc", "specs/archive/001-add-manual-vault/data-model.md": "e663af445c06e34ef55cafdcb4e0847764c52bac1a1aec4e057456517344bb91", "specs/archive/001-add-manual-vault/plan.md": "125a0a73ad3e1609a7302aee04364d49f626a595d7c3229a800972872dc7d490", "specs/archive/001-add-manual-vault/quickstart.md": "b5cdd1ac1c2de45ed3df2747ff03b57db9038cd1ddb7cb5d171794a6a5daf26d", "specs/archive/001-add-manual-vault/research.md": "f60b7e93780f937123680bd6bd0bc9806be7fd63a5057f7d6e288acd896503fa", "specs/archive/001-add-manual-vault/spec.md": "baf3a3402c1070f2585519f0d3cc806811ec748359870366c41a158a8d9050fd", "specs/archive/001-add-manual-vault/tasks.md": "3ca42a5f4bde4603261639315d56bcaadc84c8fbe863a1c36732f46b28b88869", - "specs/archive/001-remove-vault-flag/checklists/requirements.md": "63db9bf23a5ee51e380d1e140928a8466fc49c8ad45e894d754430d2afac3a47", + "specs/archive/001-add-manual-vault/checklists/requirements.md": "85ab994ef29fae0d0083bd0b1dd34fa1edc7ee442904279b1c140241959991ad", + "specs/archive/001-add-manual-vault/contracts/backup-create.md": "e928793fb396f7adeec5075726e459994ec443f8fde89de83cb5a2fec5ed3db5", + "specs/archive/001-add-manual-vault/contracts/backup-info.md": "47b763b52a7d1785f9c0debc682a82b578eec1e45fe6b2e4724ea4fed216ff4a", + "specs/archive/001-add-manual-vault/contracts/backup-restore.md": "47418485bae535c22cfade20b532e3a96e1ee381cb2ae46d4067671409f57bcc", "specs/archive/001-remove-vault-flag/COMPLETION_REPORT.md": "4c963fbe70aeb2eb9d1e8f74f74ac1efb8cd261ee42133a461488fd7c4480927", - "specs/archive/001-remove-vault-flag/contracts/config-schema.yml": "715cfc569b16c879dcdfe6e80aae5cd8e1ac11b9999b113ede91bdaec6ed5027", "specs/archive/001-remove-vault-flag/data-model.md": "852c78408738673d164f8c7a48e857fb10bfff88a180f7aec079bca96a85016f", "specs/archive/001-remove-vault-flag/plan.md": "bb01dc875519003666cdbbb76ef6deecdaf8e13afec6731dbe0aca3c248d8bb3", "specs/archive/001-remove-vault-flag/quickstart.md": "76a96c2a731fa9a7cba916a762dbd1d28c1d98105c3e79b52ec3008d686e6237", @@ -169,23 +156,21 @@ "specs/archive/001-remove-vault-flag/REVIEW-FINDINGS.md": "747a7ab88c685ff5429b271d71837bb48a33a7bc6bfd4560c6f57666df890a8e", "specs/archive/001-remove-vault-flag/spec.md": "37230a98d9d9dfadd8fe1ba62dcdbe2308deafb33a2ef000cf1d28f27eadc674", "specs/archive/001-remove-vault-flag/tasks.md": "ec78a73420747331b74841b6cdfaa521d6425637b64a5cb531b1c7f5055a58e0", - "specs/archive/001-reorganize-cmd-tui/checklists/migration-safety.md": "f04935aec9860e70ebf58a5bfa54312b3ac46a6d655afcd68fff4f7514191ae9", - "specs/archive/001-reorganize-cmd-tui/checklists/requirements.md": "4569dc3a5363068712df776ab2a47837fb6703ceb6f8b6379c499159b7514b24", + "specs/archive/001-remove-vault-flag/checklists/requirements.md": "63db9bf23a5ee51e380d1e140928a8466fc49c8ad45e894d754430d2afac3a47", + "specs/archive/001-remove-vault-flag/contracts/config-schema.yml": "715cfc569b16c879dcdfe6e80aae5cd8e1ac11b9999b113ede91bdaec6ed5027", "specs/archive/001-reorganize-cmd-tui/plan.md": "5858b239ad711b8eda05a9a84b356a03faa8a1fe3d735912ad342ca43cc762fa", "specs/archive/001-reorganize-cmd-tui/quickstart.md": "92ca7d338dfbf20d195d3818188ee6d302203c5a592cb57b0665cbaffa40a077", "specs/archive/001-reorganize-cmd-tui/spec.md": "026879d1383b5d95a3ef5332146c656858bbd72a9eac5d485cbc9d5ca2a66cd4", "specs/archive/001-reorganize-cmd-tui/tasks.md": "0bc12e8f84098f2664a9740fee5c724b92ea96b65c50dfe7e649c1c696bfb9c9", - "specs/archive/002-comprehensive-documentation-restructuring/checklists/requirements.md": "c854bd4455fdb3ee0917232294291e7907a9fe516f912088e0f97911fe56040f", + "specs/archive/001-reorganize-cmd-tui/checklists/migration-safety.md": "f04935aec9860e70ebf58a5bfa54312b3ac46a6d655afcd68fff4f7514191ae9", + "specs/archive/001-reorganize-cmd-tui/checklists/requirements.md": "4569dc3a5363068712df776ab2a47837fb6703ceb6f8b6379c499159b7514b24", "specs/archive/002-comprehensive-documentation-restructuring/data-model.md": "262177e2e175ac1af596630788161c65e9119eeda39cac39296d105e1c92c161", "specs/archive/002-comprehensive-documentation-restructuring/plan.md": "5522512ba4ce2cf0eeba3a9338ea41f99010721765933670481eeabd904c8513", "specs/archive/002-comprehensive-documentation-restructuring/quickstart.md": "c84eb6967b65adcb7bc2d1ac3fab82c0bef4d6c1013069297ee284174ee9cb6f", "specs/archive/002-comprehensive-documentation-restructuring/research.md": "f122a9846c10819cecc86ca47751f5316c3d01bff6c6fb9571e7e1b0d4eff2c4", "specs/archive/002-comprehensive-documentation-restructuring/spec.md": "b72bb64dc75bf61c3bff03aada4e35bb9d9516ef96fe913af185b596990869aa", "specs/archive/002-comprehensive-documentation-restructuring/tasks.md": "484a03834364ec6cbfbf21c7971b6a92c46a00af6033fcf20b2db6701ca769f8", - "specs/archive/002-fix-untested-features/checklists/requirements.md": "ac94492cc31a31cc1bda63c6f89b81eb3030ee4168ad24d83f769da47255d04b", - "specs/archive/002-fix-untested-features/contracts/keychain-enable.md": "348fe1a8fbe428ef6f6967e5493008c6e665f27651a39043caf198a97321c02f", - "specs/archive/002-fix-untested-features/contracts/keychain-status.md": "e719155a6e05d64e077ea661d716e51f4e245207df82a374e575ea8fce2f1c73", - "specs/archive/002-fix-untested-features/contracts/vault-remove.md": "f808b94e94526aba52bcec5148d0f4753387ba25b61c3e86d9c60e873d385e9d", + "specs/archive/002-comprehensive-documentation-restructuring/checklists/requirements.md": "c854bd4455fdb3ee0917232294291e7907a9fe516f912088e0f97911fe56040f", "specs/archive/002-fix-untested-features/data-model.md": "069583fb7032d126ff5e2d812a67fcaaae998325c449a3b5862e24f55620cb71", "specs/archive/002-fix-untested-features/design-improvements-post-spec.md": "68f8b9cd6ce505011ce0db405e2dbbc6f7c2aa4dcc0d60a884869790a3047d8a", "specs/archive/002-fix-untested-features/plan.md": "99423f57c86f06551fa9ceb42901e8dada520734f46a6cf65302adc5d455f9ba", @@ -193,15 +178,17 @@ "specs/archive/002-fix-untested-features/research.md": "ad59cefdb4cd0d34df9251b4e1b5f660be8f41b02dbc2765afdec4349eeb76f0", "specs/archive/002-fix-untested-features/spec.md": "a1ad70bbc3922e5f5ec9aa93754e9125d57bcee28e22a18468a5501fd468ecf7", "specs/archive/002-fix-untested-features/tasks.md": "fb9fdb34eebe661fc4cf1bd302aeb5d38e9873f2291af095a4ad352ac33a5409", - "specs/archive/002-hey-i-d/checklists/requirements.md": "d93b7ca4ee23dbb3a05f3627ac1c3a63b10a1134e984815f8d17fe05b4cb2886", + "specs/archive/002-fix-untested-features/checklists/requirements.md": "ac94492cc31a31cc1bda63c6f89b81eb3030ee4168ad24d83f769da47255d04b", + "specs/archive/002-fix-untested-features/contracts/keychain-enable.md": "348fe1a8fbe428ef6f6967e5493008c6e665f27651a39043caf198a97321c02f", + "specs/archive/002-fix-untested-features/contracts/keychain-status.md": "e719155a6e05d64e077ea661d716e51f4e245207df82a374e575ea8fce2f1c73", + "specs/archive/002-fix-untested-features/contracts/vault-remove.md": "f808b94e94526aba52bcec5148d0f4753387ba25b61c3e86d9c60e873d385e9d", "specs/archive/002-hey-i-d/data-model.md": "cf237510ac9cab6ad22c074d54a0a2463df60f1ede44da7740b569762282a2a8", "specs/archive/002-hey-i-d/plan.md": "0e660b20fab7620e431bd9a6b24eb2ef5770fb574c5298f381ee6d12cdfa847f", "specs/archive/002-hey-i-d/quickstart.md": "981710f8da7261d6bfe45c86d9bdb939f55f473c3e589ffbae7ba4762b22043d", "specs/archive/002-hey-i-d/research.md": "374b812a49a3372a0928b274bad0de97bacd556ee4d267a519fcdf9c0d7cbd01", "specs/archive/002-hey-i-d/spec.md": "3da2551c83ec24938e0a59cab3e9563b066fd1fa6a7915e27bf7e5a45226e985", "specs/archive/002-hey-i-d/tasks.md": "cb0052b478605b8582a80f0629b7d0e43106dd1c02dca74a923accaf2121ba39", - "specs/archive/003-bip39-mnemonic-based/checklists/requirements.md": "f47340370cee2f4d10be732c626eff39f16e575e6d4208db5a668dd2789b6268", - "specs/archive/003-bip39-mnemonic-based/contracts/recovery-api.md": "83203d5593bb86b2c364ba318bc8ef1438290b4a305c38b51b3cf8745eb18ecb", + "specs/archive/002-hey-i-d/checklists/requirements.md": "d93b7ca4ee23dbb3a05f3627ac1c3a63b10a1134e984815f8d17fe05b4cb2886", "specs/archive/003-bip39-mnemonic-based/data-model.md": "2ddcd80a0fdd46ddef9d733714389339e3efd94c59a7db2747da5af0e959b128", "specs/archive/003-bip39-mnemonic-based/final-validation.md": "60df06702ba2e66e26b3e86fe67fdd37307056c5d03dddf26f37daaf54882446", "specs/archive/003-bip39-mnemonic-based/plan.md": "2c524124ae3db71d258b8b772a1704c69da65a2c3f731ddf26d769580ea8f1e0", @@ -210,59 +197,61 @@ "specs/archive/003-bip39-mnemonic-based/research.md": "8604676b093b85abf3b94905d62476221b6ad610d107612b81f75673c77acca9", "specs/archive/003-bip39-mnemonic-based/spec.md": "0eb0d5f289c0b5f1b3580c54988e96306e5cd50d29539ad0b50ff8d83ad4bf58", "specs/archive/003-bip39-mnemonic-based/tasks.md": "fb6455b5abd58095a075c88f1ea07501be5d0d517f54ccc2673e783908c7986b", - "specs/archive/003-implement-atomic-save/checklists/requirements.md": "db1ecccf06ab0952862d250b678fadef353d210f6f4b1269073a946d4f64d238", - "specs/archive/003-implement-atomic-save/contracts/storage-save.md": "58bb32b71bffeaaa628684293459f8cebfd58bb69aa11ef99dfac892bd059ed9", + "specs/archive/003-bip39-mnemonic-based/checklists/requirements.md": "f47340370cee2f4d10be732c626eff39f16e575e6d4208db5a668dd2789b6268", + "specs/archive/003-bip39-mnemonic-based/contracts/recovery-api.md": "83203d5593bb86b2c364ba318bc8ef1438290b4a305c38b51b3cf8745eb18ecb", "specs/archive/003-implement-atomic-save/data-model.md": "07e7e7ad6ae93d0caf504ab047c8c98ad0e07673255b3a2077894a638d3aa159", "specs/archive/003-implement-atomic-save/plan.md": "d9a583e5f8f5e95f42ded515b80b10797407087b8f3171736f2175f80a4a01b6", "specs/archive/003-implement-atomic-save/quickstart.md": "3868ce7b107f4321ddcdbeba9e1bc1ffc9c1fe1afca5eee9036106d559b3455f", "specs/archive/003-implement-atomic-save/research.md": "19c0c6a6842a3e37234608ec6d477d814abb7ffd1f6bef2a97f218b3f71a9764", "specs/archive/003-implement-atomic-save/spec.md": "20f5cf017e13d3bc7a17d4287e2e97643f66d0c6ae21508cd6bc755929f113dc", "specs/archive/003-implement-atomic-save/tasks.md": "b8f8719e3951f088b5a5d2cf2c93080dbe5cebe8d386228f01c4629f57c27915", - "specs/archive/003-would-it-be/checklists/requirements.md": "4f082475951eb4c3c22addfb6c291fac37a2bc669f376d2cc74c72789cf97353", + "specs/archive/003-implement-atomic-save/checklists/requirements.md": "db1ecccf06ab0952862d250b678fadef353d210f6f4b1269073a946d4f64d238", + "specs/archive/003-implement-atomic-save/contracts/storage-save.md": "58bb32b71bffeaaa628684293459f8cebfd58bb69aa11ef99dfac892bd059ed9", "specs/archive/003-would-it-be/plan.md": "c461bd531ea3a01975e162e62ee15628ceceddb8f4e80b58825c1817af7f5a8c", "specs/archive/003-would-it-be/quickstart.md": "f63292b34de55ce6af7aa2559ceea7d0984d76c2e7d27548e3af29dc02ff08af", "specs/archive/003-would-it-be/research.md": "f38288af0ae3c418486b759b3c15f35f419390fc28cd509cf56b944029c66120", "specs/archive/003-would-it-be/spec.md": "b8878867d47909f0f7e9e97a6e6517423a2e4368ae8e22ad4d59bee350dcaa14", "specs/archive/003-would-it-be/tasks.md": "0df95aa365d128b83292df904ab5884370586e6cbda5b4e5b0a06833287636a1", - "specs/archive/004-we-ve-recently/checklists/requirements.md": "2c5cd6b9d441e8fc14fb2a6d0261a4b071e81f8e2c170b85d3dbfdec4341b664", - "specs/archive/004-we-ve-recently/contracts/tui-usage-section.md": "c90048389a98cea14f7686c842ec03c44e1c155a67715314899a7240324ab500", + "specs/archive/003-would-it-be/checklists/requirements.md": "4f082475951eb4c3c22addfb6c291fac37a2bc669f376d2cc74c72789cf97353", "specs/archive/004-we-ve-recently/data-model.md": "6503b739589b7dd8c75ba642ef7d6e20ef1642307095b1b8c069a1e432799923", "specs/archive/004-we-ve-recently/plan.md": "d0c5de244bc0ab235a0f3850b8ddaae1d1de5da9b4ffdec5f338843a34477478", "specs/archive/004-we-ve-recently/quickstart.md": "634ba11d00be560b933213cc405883d082f832b2dee82b6a1bea860a71ab5239", "specs/archive/004-we-ve-recently/research.md": "5cb1c1e3e81e8c9f32f40c39e087715dda7f7f36196148740b4a9dbd74bade9c", "specs/archive/004-we-ve-recently/spec.md": "2fd2f5075b70f463d6e19af569897f10bc8bbb78d8c881feea83107c756bb8cf", "specs/archive/004-we-ve-recently/tasks.md": "48942618204539eedccee78fc0478066241ea73353de2345ca5ebf15df3f52b9", - "specs/archive/005-security-hardening-address/checklists/requirements.md": "8a3c972e32bb30adcce0278d25506ebb34302c1ebf73e174e3ca203178a97457", + "specs/archive/004-we-ve-recently/checklists/requirements.md": "2c5cd6b9d441e8fc14fb2a6d0261a4b071e81f8e2c170b85d3dbfdec4341b664", + "specs/archive/004-we-ve-recently/contracts/tui-usage-section.md": "c90048389a98cea14f7686c842ec03c44e1c155a67715314899a7240324ab500", "specs/archive/005-security-hardening-address/data-model.md": "daa06fc69e4fd01bb7f73f5cc5d7276eb27007375b8cd16701849e53d6f069b0", "specs/archive/005-security-hardening-address/plan.md": "2d003dd5c25eaf3432d79c4fa90a6cccedbabf81919b4e7559835310e8ab1906", "specs/archive/005-security-hardening-address/quickstart.md": "1539202a8c8177a7cc8ba696bef11c1674bf0a602f86db3f29bd7d0ebe8ccfd9", "specs/archive/005-security-hardening-address/research.md": "21f8e3c930a58a9368f8ba8c1f794baa279132cbb3d8d8fcd83dd5b76d92861d", "specs/archive/005-security-hardening-address/spec.md": "352d750774c3a6bd7306979ed59f718bb404914d60eb0c0a6948f728fa3457fa", "specs/archive/005-security-hardening-address/tasks.md": "e80ed8391beb64faea7382aee14355ed6fa2ac0a6588f6ff63d766a7588232ec", - "specs/archive/006-implement-minimum-terminal/checklists/requirements.md": "55217e3e22c746786d0efbb988ceac4099651288188b0e2ce0324b01f6697c3b", + "specs/archive/005-security-hardening-address/checklists/requirements.md": "8a3c972e32bb30adcce0278d25506ebb34302c1ebf73e174e3ca203178a97457", "specs/archive/006-implement-minimum-terminal/plan.md": "3d71b3d2da2d70492c26f22d0ebde64068c9720073ad6895b19859376a132986", "specs/archive/006-implement-minimum-terminal/quickstart.md": "913a4c3977f2fa01003a7aa04f563c2226ed8cf922b28c4aa035120f992075ae", "specs/archive/006-implement-minimum-terminal/research.md": "471088d59ef143d0c8ae1bd618b1365c38a62a9485ee5f6dbb84ac17025a4274", "specs/archive/006-implement-minimum-terminal/spec.md": "e2f24e50e5743b75e42c046a6526370eb73d998cd36abc3e5ef12ecd9c837028", "specs/archive/006-implement-minimum-terminal/tasks.md": "3d3ff40bfcb1c6854b65f5446a9665a339a2716ef9d3555c74ac6a1de4170867", - "specs/archive/007-user-wants-to/checklists/integration-testing.md": "a8b1bf98aa0adbb2ba847792131f33bc80b2aada5b345a0820dcba8f08e8d9dc", - "specs/archive/007-user-wants-to/checklists/requirements.md": "f8c8bc53ba1e19a72cae47519d98940afcd1d621f0c6296530f7edad46ade533", - "specs/archive/007-user-wants-to/contracts/config-schema.md": "ed5593788f7f331f1f56f7722a6d7536fb357fbe492abea832db949cf0191129", - "specs/archive/007-user-wants-to/contracts/config-schema.yml": "c1c5c287df0bd9ded2228b8feec2d6dc11b2dc7e66a10c9bf94a46dfa5c20451", + "specs/archive/006-implement-minimum-terminal/checklists/requirements.md": "55217e3e22c746786d0efbb988ceac4099651288188b0e2ce0324b01f6697c3b", "specs/archive/007-user-wants-to/data-model.md": "beeb225c16287773fa0c7a56c7a9b065d876bf0cc1aeaf19ad0aff27b04acddb", "specs/archive/007-user-wants-to/plan.md": "8184e5ffc3a94e07c13e0119d7087b7992c2c951d8f0fd37c83a364141c7a34f", "specs/archive/007-user-wants-to/quickstart.md": "16937a0b5f1c9c278b9f73345f452bfd241f86fe327c9fcaa0359daaebd66e6f", "specs/archive/007-user-wants-to/research.md": "61314e5761e8ef6318ceffdc63e42b5f87286294c33d49dd9115433a05fc0e13", "specs/archive/007-user-wants-to/spec.md": "c0139cf7cfc9cc7f9dfa40fe669ddd475b79af71d15600fba1bb12b8a58a52e5", "specs/archive/007-user-wants-to/tasks.md": "e5451504ab60e0b43d4b74d8b046a14433a075537bbcb823fc8e66322467486a", - "specs/archive/008-review-and-update/checklists/requirements.md": "7083e4b45b9d7e281de5202cfcbb44627aa7b388dbbeca07a31ce875b2af7743", - "specs/archive/008-review-and-update/contracts/documentation-validation-schema.md": "532d37d9cb20269f9ae08a8da4a3e77ad86542401e5b3ad20a8d675e98a6ef13", + "specs/archive/007-user-wants-to/checklists/integration-testing.md": "a8b1bf98aa0adbb2ba847792131f33bc80b2aada5b345a0820dcba8f08e8d9dc", + "specs/archive/007-user-wants-to/checklists/requirements.md": "f8c8bc53ba1e19a72cae47519d98940afcd1d621f0c6296530f7edad46ade533", + "specs/archive/007-user-wants-to/contracts/config-schema.md": "ed5593788f7f331f1f56f7722a6d7536fb357fbe492abea832db949cf0191129", + "specs/archive/007-user-wants-to/contracts/config-schema.yml": "c1c5c287df0bd9ded2228b8feec2d6dc11b2dc7e66a10c9bf94a46dfa5c20451", "specs/archive/008-review-and-update/data-model.md": "1c675f9d76f361d3c7880fa5b7f97cbbe5ca72908f47e80cdb151f2dec03f384", "specs/archive/008-review-and-update/plan.md": "675894252ae5dc31975e782445bbc61ccd4834d0c82eb8119ef751ad092bcd73", "specs/archive/008-review-and-update/quickstart.md": "1a182277c0b6a4f4461882c60559d56e84916166ec86695dfbb882f10187dc5e", "specs/archive/008-review-and-update/research.md": "5ee24a521c4f6d4d4a624451e58639f2f1ebf03f289aae5b8606a26bc7b3b8e5", "specs/archive/008-review-and-update/spec.md": "9dac1077878d49976fa8f242cdcb0b1ee895e232fa084ca0f7e59a9d4857fb7c", "specs/archive/008-review-and-update/tasks.md": "331c9255b0d0cd3099ff083cb5ea7c312ae3d16dddaabce5a41bbf1023b78adb", + "specs/archive/008-review-and-update/checklists/requirements.md": "7083e4b45b9d7e281de5202cfcbb44627aa7b388dbbeca07a31ce875b2af7743", + "specs/archive/008-review-and-update/contracts/documentation-validation-schema.md": "532d37d9cb20269f9ae08a8da4a3e77ad86542401e5b3ad20a8d675e98a6ef13", "specs/archive/008-review-and-update/validation/command-tests.sh": "2586b0c158472d7caaa26b21429707a0b0015618334fe8eea8c62af9481d0b85", "specs/archive/008-review-and-update/validation/cross-reference-check.sh": "eeeda0aefb73126008a90cc3161689dc16f0be6975fa83473a6b9c6e76126f8c", "specs/archive/008-review-and-update/validation/link-check.sh": "0652367b0d38c93c12292a2f5a5d92018d3095a4f554833a9686c96e94a3cf49", @@ -270,13 +259,20 @@ "specs/archive/008-review-and-update/validation/tracking.json": "550a43b384238e5e4f0d3bd5055c76fd71e0b3130a77d83cd72c3466507441d3", "specs/archive/008-review-and-update/validation/version-audit.sh": "1e5568339e00b690cc008561b1f1bef69a3afdf6c2e49b7831c3f49992a98071", "specs/archive/009-documentation-cleanup-and/audit-checklist.md": "bca75b0b9dcf0afac4865119d3c8825e2d99e19a4e0d0d1854d0424340e312b8", - "specs/archive/009-documentation-cleanup-and/checklists/requirements.md": "d2f7086c9123d533f852bd551bb4c16b73f6121988347c479ebf500f95744f2b", "specs/archive/009-documentation-cleanup-and/plan.md": "536d932b93d2f69f2d7031f6ea9a77dc4f729cff1ddd8ca2f53389b4fd85a329", "specs/archive/009-documentation-cleanup-and/policy-structure.md": "a431139b0f3277a39831cf814ca3feca033eced5ef865b7689f2ba0149685cad", "specs/archive/009-documentation-cleanup-and/research.md": "fdeabe57535d9dee54559f2fb0bba648f3adab4b7a5f1dd288fc95192a64b4d1", "specs/archive/009-documentation-cleanup-and/spec.md": "6d8a4f2fd94ff16a105a9187806eedfa10c0ad2c56ddd86105b0b41bac1371f5", "specs/archive/009-documentation-cleanup-and/tasks.md": "fed11c53f257718025b1f45993fcb0e577cc8aff796d43c203251084c9cbf89e", + "specs/archive/009-documentation-cleanup-and/checklists/requirements.md": "d2f7086c9123d533f852bd551bb4c16b73f6121988347c479ebf500f95744f2b", "specs/archive/010-documentation-accuracy-verification/audit-report.md": "62c31ec758e700def622c6bc512c5d24875c9d9712419afab36faefe12d3b930", + "specs/archive/010-documentation-accuracy-verification/migration-script-test-report.md": "da3b93f5170f0e81e579de5f237f751daf8852c613ea9e8ebb57a4295fc8c9c1", + "specs/archive/010-documentation-accuracy-verification/phase9-findings.md": "f02bef81dbbd6543fd10ac30894843a9214d9c2b29051c2578d8475fcc1ca761", + "specs/archive/010-documentation-accuracy-verification/plan.md": "ba76026ade27b1a6f516650b6cadf9d9c7c564bb9a6777be8661f01462cf3259", + "specs/archive/010-documentation-accuracy-verification/research.md": "05193c3ec5851bd78f15d638ec61eb9b57933304d2a7efc575c711b4481f2a4a", + "specs/archive/010-documentation-accuracy-verification/spec.md": "fda0f88cfa7000e6f24f3bd2092b479007b37be195fea14be937be42ef44d4ae", + "specs/archive/010-documentation-accuracy-verification/tasks.md": "2c0ce360442edfef04e271890f2d5978487c79a34a299d1b52a5e45277ebad35", + "specs/archive/010-documentation-accuracy-verification/verification-procedures.md": "e8247f69c2511b8c10609102bfd6c635db688a24f450d1ff038aad98f708a5ad", "specs/archive/010-documentation-accuracy-verification/checklists/requirements.md": "70633a978723a03872279a1ef8a9705e9a9dab4e248b521d7098e11d73abad7e", "specs/archive/010-documentation-accuracy-verification/examples/migration-bash.sh": "882cf3287f6e64ee6e2f78bb63aed391f444c08d322e28d9b5c1835712b3180a", "specs/archive/010-documentation-accuracy-verification/examples/readme-bash.sh": "b8ed1abecc98e11fe53b11d324133daa452651bb903af35b1af09c53f25262e8", @@ -298,38 +294,29 @@ "specs/archive/010-documentation-accuracy-verification/help-output/update.txt": "8a6f58cac4a36e0c51a37c6947dd01e7cf40ad5abc1fd3687e2789aaffbc45c7", "specs/archive/010-documentation-accuracy-verification/help-output/verify-audit.txt": "f4fbbd5684f873b454182608d31824fb442aaa336afe01753297b7de49e3d212", "specs/archive/010-documentation-accuracy-verification/help-output/version.txt": "6a18ea7b85e4fb8f8a6c0141f00dee2d2d993340da92ae59ac742a848e6e4424", - "specs/archive/010-documentation-accuracy-verification/migration-script-test-report.md": "da3b93f5170f0e81e579de5f237f751daf8852c613ea9e8ebb57a4295fc8c9c1", "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/manual_tui_test.md": "88c61d58c1a178a492311aeccd42881189c0a4afcf6c4dcd1b8b1c053d3c271e", "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui.exp": "bdadb8c3892e22a2f223f63fc13bc0985aa4081c0fc6615612efb807367a097b", "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_comprehensive.ps1": "422906835ee81d897481b992545272e83e9cbd0dc5bfddbfc76939e39d07c9be", "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_simple.sh": "d073a6edc78d70b6a5eb23d664ca64310acf03cd7d7119b3e1fc0a9a00b8d526", "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_analysis.md": "01348fab2aa1ce4d8bbf65fe3dd523da21abfba6c1e41aa60d871b55f787c2d7", "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_test_report.md": "dcaf42e4472f1270ac6e80b601c3ca0ee0687ee75b04fb1b16f603756883251d", - "specs/archive/010-documentation-accuracy-verification/phase9-findings.md": "f02bef81dbbd6543fd10ac30894843a9214d9c2b29051c2578d8475fcc1ca761", - "specs/archive/010-documentation-accuracy-verification/plan.md": "ba76026ade27b1a6f516650b6cadf9d9c7c564bb9a6777be8661f01462cf3259", - "specs/archive/010-documentation-accuracy-verification/research.md": "05193c3ec5851bd78f15d638ec61eb9b57933304d2a7efc575c711b4481f2a4a", - "specs/archive/010-documentation-accuracy-verification/spec.md": "fda0f88cfa7000e6f24f3bd2092b479007b37be195fea14be937be42ef44d4ae", - "specs/archive/010-documentation-accuracy-verification/tasks.md": "2c0ce360442edfef04e271890f2d5978487c79a34a299d1b52a5e45277ebad35", - "specs/archive/010-documentation-accuracy-verification/verification-procedures.md": "e8247f69c2511b8c10609102bfd6c635db688a24f450d1ff038aad98f708a5ad", - "specs/archive/011-doctor-command-for/checklists/requirements.md": "766c45ea904c928a9962db1bdc2a38da742533f89daecc827d5d3076ddaf2f27", - "specs/archive/011-doctor-command-for/contracts/doctor-command.md": "d99e08a7822b85a6ec4cea8533dde91112ebd6c973418ff000aa66b78027f3eb", - "specs/archive/011-doctor-command-for/contracts/first-run-detection.md": "958ce1ec2facca6e237edda50f00f68c1703557f4902d2eaf0306be401513a78", "specs/archive/011-doctor-command-for/data-model.md": "d3556e4d3f665df7285b7a63cae0d01b9616cd695b0253e5ef01e5d8b3bda7ba", "specs/archive/011-doctor-command-for/plan.md": "50c777251120d3844083547b34eecd4cce35ffeffef5430083a972276b455416", "specs/archive/011-doctor-command-for/quickstart.md": "d487f6fb48394ce3cbb092605ec232ab4062d1e6e190ab87819c7acfa898d974", "specs/archive/011-doctor-command-for/research.md": "9499aa2e0cf3b97c1565f26ec4b8a0afdba19d709a6f2d19fa9ca2d6378c0c73", "specs/archive/011-doctor-command-for/spec.md": "7d28992d8bb187fdfef0c734f7149dcdc79ec2f1147a6f0b131eeb611bf23809", "specs/archive/011-doctor-command-for/tasks.md": "7b68f15a9e552193df455581cf52f634435351d915828c1f741b5eecb5b12cec", - "specs/archive/011-enhanced-usage-tracking/checklists/requirements.md": "d4777e57311181aa5087961704627195b26b6bceb0361031d62749265ac0ecc1", - "specs/archive/011-enhanced-usage-tracking/contracts/commands.md": "02f7c76742106c3d9624c1da558b4cec7bfabb59c9436772d83afa76e0647726", + "specs/archive/011-doctor-command-for/checklists/requirements.md": "766c45ea904c928a9962db1bdc2a38da742533f89daecc827d5d3076ddaf2f27", + "specs/archive/011-doctor-command-for/contracts/doctor-command.md": "d99e08a7822b85a6ec4cea8533dde91112ebd6c973418ff000aa66b78027f3eb", + "specs/archive/011-doctor-command-for/contracts/first-run-detection.md": "958ce1ec2facca6e237edda50f00f68c1703557f4902d2eaf0306be401513a78", "specs/archive/011-enhanced-usage-tracking/data-model.md": "0a17f7ff2d02ffc5c88058acebf23f510835ba24736ca8b2aaa34c0457daacb9", "specs/archive/011-enhanced-usage-tracking/plan.md": "ef36f1782975e4c762a08284592d26bb403013c0ff770a18163478aa0618af04", "specs/archive/011-enhanced-usage-tracking/quickstart.md": "495f2def63896d4d6f794b80b8ad679606324b22723425144b90297ccd177324", "specs/archive/011-enhanced-usage-tracking/research.md": "f695d050a644d043aee491748fffd484c78410af476d3312bafc154a3593304b", "specs/archive/011-enhanced-usage-tracking/spec.md": "263cb6ad2bc1e287813aca8eada7c4f5c34365c1d11c87b05bfac2bd0d30f8ad", "specs/archive/011-enhanced-usage-tracking/tasks.md": "67250729cb876f30539e64157b6ff3b1bc52ebe355a701646b22608bb8a352e8", - "specs/archive/011-keychain-lifecycle-management/checklists/requirements.md": "4cd7b8b9a12253d2a7f4ec12d5a7e2c78b3ef1d85dc5e691536d2f2680adecd8", - "specs/archive/011-keychain-lifecycle-management/contracts/commands.md": "a74568f84f5cc474b398a8966ffde73ceab263f173a9e42eebb9520510d16683", + "specs/archive/011-enhanced-usage-tracking/checklists/requirements.md": "d4777e57311181aa5087961704627195b26b6bceb0361031d62749265ac0ecc1", + "specs/archive/011-enhanced-usage-tracking/contracts/commands.md": "02f7c76742106c3d9624c1da558b4cec7bfabb59c9436772d83afa76e0647726", "specs/archive/011-keychain-lifecycle-management/data-model.md": "7d4dd16012fb1c28a24bb87dc9661019aceff9fe3dda7f661eaff9507439dc33", "specs/archive/011-keychain-lifecycle-management/FOLLOW_UP.md": "761a0a2d3d0e257a0f9bf5da30680d09597e2ad4493fa39e169eea41f247a335", "specs/archive/011-keychain-lifecycle-management/plan.md": "ebac0814cf3d238ac29cb63354ff64c729d227c4b2ab10a0f0cfaba9bf52ea6e", @@ -337,13 +324,15 @@ "specs/archive/011-keychain-lifecycle-management/research.md": "901698cb066b7364b53e8e59a57371a07c355dbb27f641667409d265c87e57c4", "specs/archive/011-keychain-lifecycle-management/spec.md": "dcd18e20e60d3f9f71abd8b760a77617d76535a3233e5255f99dba72f208db3c", "specs/archive/011-keychain-lifecycle-management/tasks.md": "204d4c2572e77fd4d5fdd2bb16ffd9f5ebe4d8000916400da6c9d397c53d2775", - "specs/archive/012-vault-metadata-for/checklists/requirements.md": "6abaf4ba567331174c503b8f6480c3a6d766b71de4745854e9417656d9b4a9f3", - "specs/archive/012-vault-metadata-for/contracts/vault-metadata-schema.json": "f373760db88ea988ad88532c9c690f0714c93613402ec21a33565ec8950a2dad", + "specs/archive/011-keychain-lifecycle-management/checklists/requirements.md": "4cd7b8b9a12253d2a7f4ec12d5a7e2c78b3ef1d85dc5e691536d2f2680adecd8", + "specs/archive/011-keychain-lifecycle-management/contracts/commands.md": "a74568f84f5cc474b398a8966ffde73ceab263f173a9e42eebb9520510d16683", "specs/archive/012-vault-metadata-for/data-model.md": "bb7af1b0e5f57d01dc43664007279dbbe1ebd9575f3d5b2c352c23aec879b96b", "specs/archive/012-vault-metadata-for/plan.md": "9f3049e89071f47a0df5e1b7d3348fa8e8209e62a0feae02a4f81fc1ef71dc2d", "specs/archive/012-vault-metadata-for/quickstart.md": "9ef9a5255ec0d10b987fd86650b58c51c0eea0a562ad8a222bd5c31322cd1996", "specs/archive/012-vault-metadata-for/research.md": "4f9e314a2a89c34f0365f856045e36220881f760e2498e8c086a6db45be996a4", "specs/archive/012-vault-metadata-for/spec.md": "9e1ba54adbe86b4af5ef0206593bbbbb0d1ab704db2f2382f40b02a0c9ccce99", - "specs/archive/012-vault-metadata-for/tasks.md": "7550706a28c4d4513d80487535158cde87475197e8e08a28107de17ec711a90f" + "specs/archive/012-vault-metadata-for/tasks.md": "7550706a28c4d4513d80487535158cde87475197e8e08a28107de17ec711a90f", + "specs/archive/012-vault-metadata-for/checklists/requirements.md": "6abaf4ba567331174c503b8f6480c3a6d766b71de4745854e9417656d9b4a9f3", + "specs/archive/012-vault-metadata-for/contracts/vault-metadata-schema.json": "f373760db88ea988ad88532c9c690f0714c93613402ec21a33565ec8950a2dad" } } \ No newline at end of file diff --git a/.doc-manager/memory/symbol-baseline.json b/.doc-manager/memory/symbol-baseline.json new file mode 100644 index 00000000..032fddc9 --- /dev/null +++ b/.doc-manager/memory/symbol-baseline.json @@ -0,0 +1,6956 @@ +{ + "version": "1.0", + "created_at": "2025-11-29T04:31:53.752027+00:00", + "updated_at": "2025-11-29T04:31:53.752027+00:00", + "project_root": "R:\\Test-Projects\\pass-cli", + "symbols": { + "init": [ + { + "name": "init", + "type": "function", + "file": "cmd/add.go", + "line": 67, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/change_password.go", + "line": 46, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/config.go", + "line": 79, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/delete.go", + "line": 45, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/doctor.go", + "line": 55, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/generate.go", + "line": 61, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/get.go", + "line": 56, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/init.go", + "line": 46, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/keychain.go", + "line": 17, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/keychain_enable.go", + "line": 37, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/keychain_status.go", + "line": 29, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/list.go", + "line": 76, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/root.go", + "line": 67, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/tui.go", + "line": 51, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/update.go", + "line": 90, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/usage.go", + "line": 51, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/vault.go", + "line": 13, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/vault_backup.go", + "line": 19, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/vault_backup_create.go", + "line": 40, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/vault_backup_info.go", + "line": 41, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/vault_backup_restore.go", + "line": 47, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/vault_remove.go", + "line": 52, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/verify_audit.go", + "line": 36, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + }, + { + "name": "init", + "type": "function", + "file": "cmd/version.go", + "line": 21, + "column": 0, + "signature": "func init()", + "parent": null, + "doc": null + } + ], + "runAdd": [ + { + "name": "runAdd", + "type": "function", + "file": "cmd/add.go", + "line": 81, + "column": 0, + "signature": "func runAdd(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "generatePasswordForAdd": [ + { + "name": "generatePasswordForAdd", + "type": "function", + "file": "cmd/add.go", + "line": 180, + "column": 0, + "signature": "func generatePasswordForAdd(length int) (string, error)", + "parent": null, + "doc": null + } + ], + "runChangePassword": [ + { + "name": "runChangePassword", + "type": "function", + "file": "cmd/change_password.go", + "line": 52, + "column": 0, + "signature": "func runChangePassword(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "unlockWithRecovery": [ + { + "name": "unlockWithRecovery", + "type": "function", + "file": "cmd/change_password.go", + "line": 143, + "column": 0, + "signature": "func unlockWithRecovery(vaultService *vault.VaultService, vaultPath string) error", + "parent": null, + "doc": null + } + ], + "runConfigInit": [ + { + "name": "runConfigInit", + "type": "function", + "file": "cmd/config.go", + "line": 88, + "column": 0, + "signature": "func runConfigInit(cmd *cobra.Command, args []string)", + "parent": null, + "doc": null + } + ], + "runConfigEdit": [ + { + "name": "runConfigEdit", + "type": "function", + "file": "cmd/config.go", + "line": 114, + "column": 0, + "signature": "func runConfigEdit(cmd *cobra.Command, args []string)", + "parent": null, + "doc": null + } + ], + "runConfigValidate": [ + { + "name": "runConfigValidate", + "type": "function", + "file": "cmd/config.go", + "line": 139, + "column": 0, + "signature": "func runConfigValidate(cmd *cobra.Command, args []string)", + "parent": null, + "doc": null + } + ], + "runConfigReset": [ + { + "name": "runConfigReset", + "type": "function", + "file": "cmd/config.go", + "line": 196, + "column": 0, + "signature": "func runConfigReset(cmd *cobra.Command, args []string)", + "parent": null, + "doc": null + } + ], + "runDelete": [ + { + "name": "runDelete", + "type": "function", + "file": "cmd/delete.go", + "line": 50, + "column": 0, + "signature": "func runDelete(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "runDoctor": [ + { + "name": "runDoctor", + "type": "function", + "file": "cmd/doctor.go", + "line": 63, + "column": 0, + "signature": "func runDoctor(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "outputHumanReadable": [ + { + "name": "outputHumanReadable", + "type": "function", + "file": "cmd/doctor.go", + "line": 106, + "column": 0, + "signature": "func outputHumanReadable(report health.HealthReport, opts health.CheckOptions, verbose bool)", + "parent": null, + "doc": null + } + ], + "outputHealthReportJSON": [ + { + "name": "outputHealthReportJSON", + "type": "function", + "file": "cmd/doctor.go", + "line": 178, + "column": 0, + "signature": "func outputHealthReportJSON(report health.HealthReport, opts health.CheckOptions) error", + "parent": null, + "doc": null + } + ], + "getConfigPath": [ + { + "name": "getConfigPath", + "type": "function", + "file": "cmd/doctor.go", + "line": 192, + "column": 0, + "signature": "func getConfigPath() string", + "parent": null, + "doc": null + } + ], + "runGenerate": [ + { + "name": "runGenerate", + "type": "function", + "file": "cmd/generate.go", + "line": 71, + "column": 0, + "signature": "func runGenerate(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "generatePassword": [ + { + "name": "generatePassword", + "type": "function", + "file": "cmd/generate.go", + "line": 145, + "column": 0, + "signature": "func generatePassword(length int, charset string) (string, error)", + "parent": null, + "doc": null + } + ], + "calculateEntropy": [ + { + "name": "calculateEntropy", + "type": "function", + "file": "cmd/generate.go", + "line": 200, + "column": 0, + "signature": "func calculateEntropy(length int, charsetSize int) float64", + "parent": null, + "doc": null + } + ], + "joinWithCommas": [ + { + "name": "joinWithCommas", + "type": "function", + "file": "cmd/generate.go", + "line": 215, + "column": 0, + "signature": "func joinWithCommas(items []string) string", + "parent": null, + "doc": null + } + ], + "runGet": [ + { + "name": "runGet", + "type": "function", + "file": "cmd/get.go", + "line": 64, + "column": 0, + "signature": "func runGet(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "outputQuietMode": [ + { + "name": "outputQuietMode", + "type": "function", + "file": "cmd/get.go", + "line": 104, + "column": 0, + "signature": "func outputQuietMode(cred *vault.Credential, vaultService *vault.VaultService, service string) error", + "parent": null, + "doc": null + } + ], + "outputNormalMode": [ + { + "name": "outputNormalMode", + "type": "function", + "file": "cmd/get.go", + "line": 142, + "column": 0, + "signature": "func outputNormalMode(cred *vault.Credential, vaultService *vault.VaultService, service string) error", + "parent": null, + "doc": null + } + ], + "readLine": [ + { + "name": "readLine", + "type": "function", + "file": "cmd/helpers.go", + "line": 31, + "column": 0, + "signature": "func readLine() (string, error)", + "parent": null, + "doc": null + } + ], + "readPassword": [ + { + "name": "readPassword", + "type": "function", + "file": "cmd/helpers.go", + "line": 52, + "column": 0, + "signature": "func readPassword() ([]byte, error)", + "parent": null, + "doc": null + } + ], + "getAuditLogPath": [ + { + "name": "getAuditLogPath", + "type": "function", + "file": "cmd/helpers.go", + "line": 86, + "column": 0, + "signature": "func getAuditLogPath(vaultPath string) string", + "parent": null, + "doc": null + } + ], + "getVaultID": [ + { + "name": "getVaultID", + "type": "function", + "file": "cmd/helpers.go", + "line": 99, + "column": 0, + "signature": "func getVaultID(vaultPath string) string", + "parent": null, + "doc": null + } + ], + "getKeychainUnavailableMessage": [ + { + "name": "getKeychainUnavailableMessage", + "type": "function", + "file": "cmd/helpers.go", + "line": 108, + "column": 0, + "signature": "func getKeychainUnavailableMessage() string", + "parent": null, + "doc": null + } + ], + "formatRelativeTime": [ + { + "name": "formatRelativeTime", + "type": "function", + "file": "cmd/helpers.go", + "line": 124, + "column": 0, + "signature": "func formatRelativeTime(timestamp time.Time) string", + "parent": null, + "doc": null + }, + { + "name": "formatRelativeTime", + "type": "function", + "file": "cmd/tui/components/table.go", + "line": 218, + "column": 0, + "signature": "func formatRelativeTime(t time.Time) string", + "parent": null, + "doc": null + } + ], + "pathExists": [ + { + "name": "pathExists", + "type": "function", + "file": "cmd/helpers.go", + "line": 193, + "column": 0, + "signature": "func pathExists(path string) bool", + "parent": null, + "doc": null + } + ], + "formatFieldCounts": [ + { + "name": "formatFieldCounts", + "type": "function", + "file": "cmd/helpers.go", + "line": 200, + "column": 0, + "signature": "func formatFieldCounts(fieldCounts map[string]int) string", + "parent": null, + "doc": null + } + ], + "formatUsageTable": [ + { + "name": "formatUsageTable", + "type": "function", + "file": "cmd/helpers.go", + "line": 224, + "column": 0, + "signature": "func formatUsageTable(records []vault.UsageRecord) string", + "parent": null, + "doc": null + } + ], + "initVaultAndStorage": [ + { + "name": "initVaultAndStorage", + "type": "function", + "file": "cmd/helpers.go", + "line": 256, + "column": 0, + "signature": "func initVaultAndStorage(vaultPath string) (*vault.VaultService, error)", + "parent": null, + "doc": null + } + ], + "logVerbose": [ + { + "name": "logVerbose", + "type": "function", + "file": "cmd/helpers.go", + "line": 266, + "column": 0, + "signature": "func logVerbose(verbose bool, format string, args ...interface", + "parent": null, + "doc": null + } + ], + "formatAge": [ + { + "name": "formatAge", + "type": "function", + "file": "cmd/helpers.go", + "line": 276, + "column": 0, + "signature": "func formatAge(d time.Duration) string", + "parent": null, + "doc": null + } + ], + "formatSize": [ + { + "name": "formatSize", + "type": "function", + "file": "cmd/helpers.go", + "line": 317, + "column": 0, + "signature": "func formatSize(bytes int64) string", + "parent": null, + "doc": null + } + ], + "unlockVault": [ + { + "name": "unlockVault", + "type": "function", + "file": "cmd/helpers.go", + "line": 331, + "column": 0, + "signature": "func unlockVault(vaultService *vault.VaultService) error", + "parent": null, + "doc": null + } + ], + "displayMnemonic": [ + { + "name": "displayMnemonic", + "type": "function", + "file": "cmd/helpers.go", + "line": 358, + "column": 0, + "signature": "func displayMnemonic(mnemonic string)", + "parent": null, + "doc": null + } + ], + "promptForWord": [ + { + "name": "promptForWord", + "type": "function", + "file": "cmd/helpers.go", + "line": 394, + "column": 0, + "signature": "func promptForWord(position int) (string, error)", + "parent": null, + "doc": null + } + ], + "promptYesNo": [ + { + "name": "promptYesNo", + "type": "function", + "file": "cmd/helpers.go", + "line": 423, + "column": 0, + "signature": "func promptYesNo(prompt string, defaultYes bool) (bool, error)", + "parent": null, + "doc": null + } + ], + "promptForWordWithValidation": [ + { + "name": "promptForWordWithValidation", + "type": "function", + "file": "cmd/helpers.go", + "line": 470, + "column": 0, + "signature": "func promptForWordWithValidation(position int) (string, error)", + "parent": null, + "doc": null + } + ], + "runInit": [ + { + "name": "runInit", + "type": "function", + "file": "cmd/init.go", + "line": 55, + "column": 0, + "signature": "func runInit(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "runKeychainEnable": [ + { + "name": "runKeychainEnable", + "type": "function", + "file": "cmd/keychain_enable.go", + "line": 43, + "column": 0, + "signature": "func runKeychainEnable(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "runKeychainStatus": [ + { + "name": "runKeychainStatus", + "type": "function", + "file": "cmd/keychain_status.go", + "line": 33, + "column": 0, + "signature": "func runKeychainStatus(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "getBackendImplementation": [ + { + "name": "getBackendImplementation", + "type": "function", + "file": "cmd/keychain_status.go", + "line": 139, + "column": 0, + "signature": "func getBackendImplementation() string", + "parent": null, + "doc": null + } + ], + "runList": [ + { + "name": "runList", + "type": "function", + "file": "cmd/list.go", + "line": 86, + "column": 0, + "signature": "func runList(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "filterUnused": [ + { + "name": "filterUnused", + "type": "function", + "file": "cmd/list.go", + "line": 158, + "column": 0, + "signature": "func filterUnused(metadata []vault.CredentialMetadata, days int) []vault.CredentialMetadata", + "parent": null, + "doc": null + } + ], + "filterCredentialsByLocation": [ + { + "name": "filterCredentialsByLocation", + "type": "function", + "file": "cmd/list.go", + "line": 176, + "column": 0, + "signature": "func filterCredentialsByLocation(metadata []vault.CredentialMetadata, location string, recursive bool) ([]vault.CredentialMetadata, error)", + "parent": null, + "doc": null + } + ], + "outputSimple": [ + { + "name": "outputSimple", + "type": "function", + "file": "cmd/list.go", + "line": 234, + "column": 0, + "signature": "func outputSimple(metadata []vault.CredentialMetadata) error", + "parent": null, + "doc": null + } + ], + "outputJSON": [ + { + "name": "outputJSON", + "type": "function", + "file": "cmd/list.go", + "line": 241, + "column": 0, + "signature": "func outputJSON(metadata []vault.CredentialMetadata) error", + "parent": null, + "doc": null + } + ], + "outputTable": [ + { + "name": "outputTable", + "type": "function", + "file": "cmd/list.go", + "line": 250, + "column": 0, + "signature": "func outputTable(metadata []vault.CredentialMetadata) error", + "parent": null, + "doc": null + } + ], + "groupCredentialsByProject": [ + { + "name": "groupCredentialsByProject", + "type": "function", + "file": "cmd/list.go", + "line": 309, + "column": 0, + "signature": "func groupCredentialsByProject(metadata []vault.CredentialMetadata) map[string][]string", + "parent": null, + "doc": null + } + ], + "outputByProject": [ + { + "name": "outputByProject", + "type": "function", + "file": "cmd/list.go", + "line": 345, + "column": 0, + "signature": "func outputByProject(projects map[string][]string, format string) error", + "parent": null, + "doc": null + } + ], + "outputByProjectTable": [ + { + "name": "outputByProjectTable", + "type": "function", + "file": "cmd/list.go", + "line": 359, + "column": 0, + "signature": "func outputByProjectTable(projects map[string][]string) error", + "parent": null, + "doc": null + } + ], + "outputByProjectJSON": [ + { + "name": "outputByProjectJSON", + "type": "function", + "file": "cmd/list.go", + "line": 398, + "column": 0, + "signature": "func outputByProjectJSON(projects map[string][]string) error", + "parent": null, + "doc": null + } + ], + "outputByProjectSimple": [ + { + "name": "outputByProjectSimple", + "type": "function", + "file": "cmd/list.go", + "line": 414, + "column": 0, + "signature": "func outputByProjectSimple(projects map[string][]string) error", + "parent": null, + "doc": null + } + ], + "Execute": [ + { + "name": "Execute", + "type": "function", + "file": "cmd/root.go", + "line": 60, + "column": 0, + "signature": "func Execute()", + "parent": null, + "doc": null + } + ], + "GetVaultPath": [ + { + "name": "GetVaultPath", + "type": "function", + "file": "cmd/root.go", + "line": 108, + "column": 0, + "signature": "func GetVaultPath() string", + "parent": null, + "doc": null + } + ], + "GetVaultPathWithSource": [ + { + "name": "GetVaultPathWithSource", + "type": "function", + "file": "cmd/root.go", + "line": 168, + "column": 0, + "signature": "func GetVaultPathWithSource() (path string, source string)", + "parent": null, + "doc": null + } + ], + "IsVerbose": [ + { + "name": "IsVerbose", + "type": "function", + "file": "cmd/root.go", + "line": 234, + "column": 0, + "signature": "func IsVerbose() bool", + "parent": null, + "doc": null + } + ], + "runRootCommand": [ + { + "name": "runRootCommand", + "type": "function", + "file": "cmd/root.go", + "line": 240, + "column": 0, + "signature": "func runRootCommand(cmd *cobra.Command, args []string)", + "parent": null, + "doc": null + } + ], + "checkFirstRun": [ + { + "name": "checkFirstRun", + "type": "function", + "file": "cmd/root.go", + "line": 288, + "column": 0, + "signature": "func checkFirstRun(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "initConfig": [ + { + "name": "initConfig", + "type": "function", + "file": "cmd/root.go", + "line": 315, + "column": 0, + "signature": "func initConfig()", + "parent": null, + "doc": null + } + ], + "runTUI": [ + { + "name": "runTUI", + "type": "function", + "file": "cmd/tui.go", + "line": 55, + "column": 0, + "signature": "func runTUI(cmd *cobra.Command, args []string)", + "parent": null, + "doc": null + } + ], + "launchTUI": [ + { + "name": "launchTUI", + "type": "function", + "file": "cmd/tui.go", + "line": 91, + "column": 0, + "signature": "func launchTUI(vaultService *vault.VaultService) error", + "parent": null, + "doc": null + }, + { + "name": "launchTUI", + "type": "function", + "file": "cmd/tui/main.go", + "line": 257, + "column": 0, + "signature": "func launchTUI(vaultService *vault.VaultService) error", + "parent": null, + "doc": null + } + ], + "promptForMasterPassword": [ + { + "name": "promptForMasterPassword", + "type": "function", + "file": "cmd/tui.go", + "line": 170, + "column": 0, + "signature": "func promptForMasterPassword() ([]byte, error)", + "parent": null, + "doc": null + } + ], + "createTUIApp": [ + { + "name": "createTUIApp", + "type": "function", + "file": "cmd/tui.go", + "line": 176, + "column": 0, + "signature": "func createTUIApp() *tview.Application", + "parent": null, + "doc": null + } + ], + "restoreTerminal": [ + { + "name": "restoreTerminal", + "type": "function", + "file": "cmd/tui.go", + "line": 183, + "column": 0, + "signature": "func restoreTerminal()", + "parent": null, + "doc": null + } + ], + "runUpdate": [ + { + "name": "runUpdate", + "type": "function", + "file": "cmd/update.go", + "line": 108, + "column": 0, + "signature": "func runUpdate(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "generatePasswordForUpdate": [ + { + "name": "generatePasswordForUpdate", + "type": "function", + "file": "cmd/update.go", + "line": 311, + "column": 0, + "signature": "func generatePasswordForUpdate(length int) (string, error)", + "parent": null, + "doc": null + } + ], + "runUsage": [ + { + "name": "runUsage", + "type": "function", + "file": "cmd/usage.go", + "line": 71, + "column": 0, + "signature": "func runUsage(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "outputUsageTable": [ + { + "name": "outputUsageTable", + "type": "function", + "file": "cmd/usage.go", + "line": 132, + "column": 0, + "signature": "func outputUsageTable(records []vault.UsageRecord, originalCount int) error", + "parent": null, + "doc": null + } + ], + "outputUsageJSON": [ + { + "name": "outputUsageJSON", + "type": "function", + "file": "cmd/usage.go", + "line": 160, + "column": 0, + "signature": "func outputUsageJSON(serviceName string, records []vault.UsageRecord) error", + "parent": null, + "doc": null + } + ], + "outputUsageSimple": [ + { + "name": "outputUsageSimple", + "type": "function", + "file": "cmd/usage.go", + "line": 185, + "column": 0, + "signature": "func outputUsageSimple(records []vault.UsageRecord) error", + "parent": null, + "doc": null + } + ], + "usageRecordWithPath": [ + { + "name": "usageRecordWithPath", + "type": "struct", + "file": "cmd/usage.go", + "line": 61, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "runVaultBackupCreate": [ + { + "name": "runVaultBackupCreate", + "type": "function", + "file": "cmd/vault_backup_create.go", + "line": 45, + "column": 0, + "signature": "func runVaultBackupCreate(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "runVaultBackupInfo": [ + { + "name": "runVaultBackupInfo", + "type": "function", + "file": "cmd/vault_backup_info.go", + "line": 46, + "column": 0, + "signature": "func runVaultBackupInfo(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "displayBackup": [ + { + "name": "displayBackup", + "type": "function", + "file": "cmd/vault_backup_info.go", + "line": 136, + "column": 0, + "signature": "func displayBackup(b *storage.BackupInfo, verbose bool)", + "parent": null, + "doc": null + } + ], + "runVaultBackupRestore": [ + { + "name": "runVaultBackupRestore", + "type": "function", + "file": "cmd/vault_backup_restore.go", + "line": 54, + "column": 0, + "signature": "func runVaultBackupRestore(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "runVaultRemove": [ + { + "name": "runVaultRemove", + "type": "function", + "file": "cmd/vault_remove.go", + "line": 60, + "column": 0, + "signature": "func runVaultRemove(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "runVerifyAudit": [ + { + "name": "runVerifyAudit", + "type": "function", + "file": "cmd/verify_audit.go", + "line": 41, + "column": 0, + "signature": "func runVerifyAudit(cmd *cobra.Command, args []string) error", + "parent": null, + "doc": null + } + ], + "NewApp": [ + { + "name": "NewApp", + "type": "function", + "file": "cmd/tui/app.go", + "line": 13, + "column": 0, + "signature": "func NewApp() *tview.Application", + "parent": null, + "doc": null + } + ], + "SetRootSafely": [ + { + "name": "SetRootSafely", + "type": "function", + "file": "cmd/tui/app.go", + "line": 24, + "column": 0, + "signature": "func SetRootSafely(app *tview.Application, root tview.Primitive, fullscreen bool)", + "parent": null, + "doc": null + } + ], + "Quit": [ + { + "name": "Quit", + "type": "function", + "file": "cmd/tui/app.go", + "line": 32, + "column": 0, + "signature": "func Quit(app *tview.Application)", + "parent": null, + "doc": null + } + ], + "RestoreTerminal": [ + { + "name": "RestoreTerminal", + "type": "function", + "file": "cmd/tui/app.go", + "line": 39, + "column": 0, + "signature": "func RestoreTerminal()", + "parent": null, + "doc": null + } + ], + "Run": [ + { + "name": "Run", + "type": "function", + "file": "cmd/tui/main.go", + "line": 23, + "column": 0, + "signature": "func Run(vaultPath string) error", + "parent": null, + "doc": null + }, + { + "name": "Run", + "type": "method", + "file": "internal/health/backup.go", + "line": 29, + "column": 0, + "signature": "func (b *BackupChecker) Run(ctx context.Context) CheckResult", + "parent": null, + "doc": null + }, + { + "name": "Run", + "type": "method", + "file": "internal/health/config.go", + "line": 30, + "column": 0, + "signature": "func (c *ConfigChecker) Run(ctx context.Context) CheckResult", + "parent": null, + "doc": null + }, + { + "name": "Run", + "type": "method", + "file": "internal/health/keychain.go", + "line": 30, + "column": 0, + "signature": "func (k *KeychainChecker) Run(ctx context.Context) CheckResult", + "parent": null, + "doc": null + }, + { + "name": "Run", + "type": "method", + "file": "internal/health/vault.go", + "line": 28, + "column": 0, + "signature": "func (v *VaultChecker) Run(ctx context.Context) CheckResult", + "parent": null, + "doc": null + }, + { + "name": "Run", + "type": "method", + "file": "internal/health/version.go", + "line": 35, + "column": 0, + "signature": "func (v *VersionChecker) Run(ctx context.Context) CheckResult", + "parent": null, + "doc": null + } + ], + "getDefaultVaultPath": [ + { + "name": "getDefaultVaultPath", + "type": "function", + "file": "cmd/tui/main.go", + "line": 101, + "column": 0, + "signature": "func getDefaultVaultPath() string", + "parent": null, + "doc": null + } + ], + "promptForPassword": [ + { + "name": "promptForPassword", + "type": "function", + "file": "cmd/tui/main.go", + "line": 112, + "column": 0, + "signature": "func promptForPassword() ([]byte, error)", + "parent": null, + "doc": null + } + ], + "LaunchTUI": [ + { + "name": "LaunchTUI", + "type": "function", + "file": "cmd/tui/main.go", + "line": 126, + "column": 0, + "signature": "func LaunchTUI(vaultService *vault.VaultService) error", + "parent": null, + "doc": null + } + ], + "NewDetailView": [ + { + "name": "NewDetailView", + "type": "function", + "file": "cmd/tui/components/detail.go", + "line": 41, + "column": 0, + "signature": "func NewDetailView(appState *models.AppState) *DetailView", + "parent": null, + "doc": null + } + ], + "colorWithBg": [ + { + "name": "colorWithBg", + "type": "function", + "file": "cmd/tui/components/detail.go", + "line": 327, + "column": 0, + "signature": "func colorWithBg(colorName string) string", + "parent": null, + "doc": null + } + ], + "textColor": [ + { + "name": "textColor", + "type": "function", + "file": "cmd/tui/components/detail.go", + "line": 335, + "column": 0, + "signature": "func textColor() string", + "parent": null, + "doc": null + } + ], + "separator": [ + { + "name": "separator", + "type": "function", + "file": "cmd/tui/components/detail.go", + "line": 345, + "column": 0, + "signature": "func separator() string", + "parent": null, + "doc": null + } + ], + "SortUsageLocations": [ + { + "name": "SortUsageLocations", + "type": "function", + "file": "cmd/tui/components/detail.go", + "line": 356, + "column": 0, + "signature": "func SortUsageLocations(records map[string]vault.UsageRecord) []vault.UsageRecord", + "parent": null, + "doc": null + } + ], + "FormatTimestamp": [ + { + "name": "FormatTimestamp", + "type": "function", + "file": "cmd/tui/components/detail.go", + "line": 380, + "column": 0, + "signature": "func FormatTimestamp(t time.Time) string", + "parent": null, + "doc": null + } + ], + "FormatUsageLocations": [ + { + "name": "FormatUsageLocations", + "type": "function", + "file": "cmd/tui/components/detail.go", + "line": 418, + "column": 0, + "signature": "func FormatUsageLocations(cred *vault.Credential) string", + "parent": null, + "doc": null + } + ], + "Refresh": [ + { + "name": "Refresh", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 62, + "column": 0, + "signature": "func (dv *DetailView) Refresh()", + "parent": null, + "doc": null + }, + { + "name": "Refresh", + "type": "method", + "file": "cmd/tui/components/sidebar.go", + "line": 75, + "column": 0, + "signature": "func (s *Sidebar) Refresh()", + "parent": null, + "doc": null + }, + { + "name": "Refresh", + "type": "method", + "file": "cmd/tui/components/table.go", + "line": 76, + "column": 0, + "signature": "func (ct *CredentialTable) Refresh()", + "parent": null, + "doc": null + } + ], + "formatCredential": [ + { + "name": "formatCredential", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 90, + "column": 0, + "signature": "func (dv *DetailView) formatCredential(cred *vault.CredentialMetadata) string", + "parent": null, + "doc": null + } + ], + "formatPasswordField": [ + { + "name": "formatPasswordField", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 170, + "column": 0, + "signature": "func (dv *DetailView) formatPasswordField(b *strings.Builder, cred *vault.CredentialMetadata)", + "parent": null, + "doc": null + } + ], + "showEmptyState": [ + { + "name": "showEmptyState", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 191, + "column": 0, + "signature": "func (dv *DetailView) showEmptyState()", + "parent": null, + "doc": null + } + ], + "TogglePasswordVisibility": [ + { + "name": "TogglePasswordVisibility", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 207, + "column": 0, + "signature": "func (dv *DetailView) TogglePasswordVisibility()", + "parent": null, + "doc": null + } + ], + "CopyPasswordToClipboard": [ + { + "name": "CopyPasswordToClipboard", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 216, + "column": 0, + "signature": "func (dv *DetailView) CopyPasswordToClipboard() error", + "parent": null, + "doc": null + } + ], + "CopyFieldToClipboard": [ + { + "name": "CopyFieldToClipboard", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 256, + "column": 0, + "signature": "func (dv *DetailView) CopyFieldToClipboard(field string) error", + "parent": null, + "doc": null + } + ], + "applyStyles": [ + { + "name": "applyStyles", + "type": "method", + "file": "cmd/tui/components/detail.go", + "line": 318, + "column": 0, + "signature": "func (dv *DetailView) applyStyles()", + "parent": null, + "doc": null + }, + { + "name": "applyStyles", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 370, + "column": 0, + "signature": "func (af *AddForm) applyStyles()", + "parent": null, + "doc": null + }, + { + "name": "applyStyles", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 830, + "column": 0, + "signature": "func (ef *EditForm) applyStyles()", + "parent": null, + "doc": null + }, + { + "name": "applyStyles", + "type": "method", + "file": "cmd/tui/components/sidebar.go", + "line": 185, + "column": 0, + "signature": "func (s *Sidebar) applyStyles()", + "parent": null, + "doc": null + }, + { + "name": "applyStyles", + "type": "method", + "file": "cmd/tui/components/table.go", + "line": 208, + "column": 0, + "signature": "func (ct *CredentialTable) applyStyles()", + "parent": null, + "doc": null + } + ], + "DetailView": [ + { + "name": "DetailView", + "type": "struct", + "file": "cmd/tui/components/detail.go", + "line": 31, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "normalizeCategory": [ + { + "name": "normalizeCategory", + "type": "function", + "file": "cmd/tui/components/forms.go", + "line": 22, + "column": 0, + "signature": "func normalizeCategory(c string) string", + "parent": null, + "doc": null + } + ], + "NewAddForm": [ + { + "name": "NewAddForm", + "type": "function", + "file": "cmd/tui/components/forms.go", + "line": 64, + "column": 0, + "signature": "func NewAddForm(appState *models.AppState) *AddForm", + "parent": null, + "doc": null + } + ], + "NewEditForm": [ + { + "name": "NewEditForm", + "type": "function", + "file": "cmd/tui/components/forms.go", + "line": 447, + "column": 0, + "signature": "func NewEditForm(appState *models.AppState, credential *vault.CredentialMetadata) *EditForm", + "parent": null, + "doc": null + } + ], + "generateSecurePassword": [ + { + "name": "generateSecurePassword", + "type": "function", + "file": "cmd/tui/components/forms.go", + "line": 907, + "column": 0, + "signature": "func generateSecurePassword(length int) (string, error)", + "parent": null, + "doc": null + } + ], + "buildFormFields": [ + { + "name": "buildFormFields", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 81, + "column": 0, + "signature": "func (af *AddForm) buildFormFields()", + "parent": null, + "doc": null + } + ], + "onAddPressed": [ + { + "name": "onAddPressed", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 152, + "column": 0, + "signature": "func (af *AddForm) onAddPressed()", + "parent": null, + "doc": null + } + ], + "onCancelPressed": [ + { + "name": "onCancelPressed", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 188, + "column": 0, + "signature": "func (af *AddForm) onCancelPressed()", + "parent": null, + "doc": null + }, + { + "name": "onCancelPressed", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 649, + "column": 0, + "signature": "func (ef *EditForm) onCancelPressed()", + "parent": null, + "doc": null + } + ], + "onGeneratePassword": [ + { + "name": "onGeneratePassword", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 212, + "column": 0, + "signature": "func (af *AddForm) onGeneratePassword()", + "parent": null, + "doc": null + }, + { + "name": "onGeneratePassword", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 673, + "column": 0, + "signature": "func (ef *EditForm) onGeneratePassword()", + "parent": null, + "doc": null + } + ], + "hasUnsavedData": [ + { + "name": "hasUnsavedData", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 233, + "column": 0, + "signature": "func (af *AddForm) hasUnsavedData() bool", + "parent": null, + "doc": null + } + ], + "validate": [ + { + "name": "validate", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 250, + "column": 0, + "signature": "func (af *AddForm) validate() error", + "parent": null, + "doc": null + }, + { + "name": "validate", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 714, + "column": 0, + "signature": "func (ef *EditForm) validate() error", + "parent": null, + "doc": null + } + ], + "updatePasswordLabel": [ + { + "name": "updatePasswordLabel", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 273, + "column": 0, + "signature": "func (af *AddForm) updatePasswordLabel(field *tview.InputField, password []byte)", + "parent": null, + "doc": null + }, + { + "name": "updatePasswordLabel", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 808, + "column": 0, + "signature": "func (ef *EditForm) updatePasswordLabel(field *tview.InputField, password []byte)", + "parent": null, + "doc": null + } + ], + "getCategories": [ + { + "name": "getCategories", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 296, + "column": 0, + "signature": "func (af *AddForm) getCategories() []string", + "parent": null, + "doc": null + }, + { + "name": "getCategories", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 734, + "column": 0, + "signature": "func (ef *EditForm) getCategories() []string", + "parent": null, + "doc": null + } + ], + "wrapInFrame": [ + { + "name": "wrapInFrame", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 305, + "column": 0, + "signature": "func (af *AddForm) wrapInFrame()", + "parent": null, + "doc": null + }, + { + "name": "wrapInFrame", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 743, + "column": 0, + "signature": "func (ef *EditForm) wrapInFrame()", + "parent": null, + "doc": null + } + ], + "setupKeyboardShortcuts": [ + { + "name": "setupKeyboardShortcuts", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 336, + "column": 0, + "signature": "func (af *AddForm) setupKeyboardShortcuts()", + "parent": null, + "doc": null + }, + { + "name": "setupKeyboardShortcuts", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 774, + "column": 0, + "signature": "func (ef *EditForm) setupKeyboardShortcuts()", + "parent": null, + "doc": null + } + ], + "togglePasswordVisibility": [ + { + "name": "togglePasswordVisibility", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 400, + "column": 0, + "signature": "func (af *AddForm) togglePasswordVisibility()", + "parent": null, + "doc": null + }, + { + "name": "togglePasswordVisibility", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 860, + "column": 0, + "signature": "func (ef *EditForm) togglePasswordVisibility()", + "parent": null, + "doc": null + } + ], + "SetOnSubmit": [ + { + "name": "SetOnSubmit", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 421, + "column": 0, + "signature": "func (af *AddForm) SetOnSubmit(callback func())", + "parent": null, + "doc": null + }, + { + "name": "SetOnSubmit", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 881, + "column": 0, + "signature": "func (ef *EditForm) SetOnSubmit(callback func())", + "parent": null, + "doc": null + } + ], + "SetOnCancel": [ + { + "name": "SetOnCancel", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 426, + "column": 0, + "signature": "func (af *AddForm) SetOnCancel(callback func())", + "parent": null, + "doc": null + }, + { + "name": "SetOnCancel", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 886, + "column": 0, + "signature": "func (ef *EditForm) SetOnCancel(callback func())", + "parent": null, + "doc": null + } + ], + "SetOnCancelConfirm": [ + { + "name": "SetOnCancelConfirm", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 431, + "column": 0, + "signature": "func (af *AddForm) SetOnCancelConfirm(callback func(message string, onYes func(), onNo func()))", + "parent": null, + "doc": null + }, + { + "name": "SetOnCancelConfirm", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 891, + "column": 0, + "signature": "func (ef *EditForm) SetOnCancelConfirm(callback func(message string, onYes func(), onNo func()))", + "parent": null, + "doc": null + } + ], + "GetFormItem": [ + { + "name": "GetFormItem", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 436, + "column": 0, + "signature": "func (af *AddForm) GetFormItem(index int) tview.FormItem", + "parent": null, + "doc": null + }, + { + "name": "GetFormItem", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 896, + "column": 0, + "signature": "func (ef *EditForm) GetFormItem(index int) tview.FormItem", + "parent": null, + "doc": null + } + ], + "GetInputCapture": [ + { + "name": "GetInputCapture", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 441, + "column": 0, + "signature": "func (af *AddForm) GetInputCapture() func(event *tcell.EventKey) *tcell.EventKey", + "parent": null, + "doc": null + }, + { + "name": "GetInputCapture", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 901, + "column": 0, + "signature": "func (ef *EditForm) GetInputCapture() func(event *tcell.EventKey) *tcell.EventKey", + "parent": null, + "doc": null + } + ], + "buildFormFieldsWithValues": [ + { + "name": "buildFormFieldsWithValues", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 465, + "column": 0, + "signature": "func (ef *EditForm) buildFormFieldsWithValues()", + "parent": null, + "doc": null + } + ], + "fetchPasswordIfNeeded": [ + { + "name": "fetchPasswordIfNeeded", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 540, + "column": 0, + "signature": "func (ef *EditForm) fetchPasswordIfNeeded(passwordField *tview.InputField)", + "parent": null, + "doc": null + } + ], + "onSavePressed": [ + { + "name": "onSavePressed", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 567, + "column": 0, + "signature": "func (ef *EditForm) onSavePressed()", + "parent": null, + "doc": null + } + ], + "performSave": [ + { + "name": "performSave", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 587, + "column": 0, + "signature": "func (ef *EditForm) performSave()", + "parent": null, + "doc": null + } + ], + "hasUnsavedChanges": [ + { + "name": "hasUnsavedChanges", + "type": "method", + "file": "cmd/tui/components/forms.go", + "line": 694, + "column": 0, + "signature": "func (ef *EditForm) hasUnsavedChanges() bool", + "parent": null, + "doc": null + } + ], + "AddForm": [ + { + "name": "AddForm", + "type": "struct", + "file": "cmd/tui/components/forms.go", + "line": 31, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "EditForm": [ + { + "name": "EditForm", + "type": "struct", + "file": "cmd/tui/components/forms.go", + "line": 46, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewSidebar": [ + { + "name": "NewSidebar", + "type": "function", + "file": "cmd/tui/components/sidebar.go", + "line": 31, + "column": 0, + "signature": "func NewSidebar(appState *models.AppState) *Sidebar", + "parent": null, + "doc": null + } + ], + "onSelect": [ + { + "name": "onSelect", + "type": "method", + "file": "cmd/tui/components/sidebar.go", + "line": 143, + "column": 0, + "signature": "func (s *Sidebar) onSelect(node *tview.TreeNode)", + "parent": null, + "doc": null + } + ], + "NodeReference": [ + { + "name": "NodeReference", + "type": "struct", + "file": "cmd/tui/components/sidebar.go", + "line": 15, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "Sidebar": [ + { + "name": "Sidebar", + "type": "struct", + "file": "cmd/tui/components/sidebar.go", + "line": 22, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewStatusBar": [ + { + "name": "NewStatusBar", + "type": "function", + "file": "cmd/tui/components/statusbar.go", + "line": 40, + "column": 0, + "signature": "func NewStatusBar(app *tview.Application, appState *models.AppState, cfg *config.Config) *StatusBar", + "parent": null, + "doc": null + } + ], + "UpdateForContext": [ + { + "name": "UpdateForContext", + "type": "method", + "file": "cmd/tui/components/statusbar.go", + "line": 67, + "column": 0, + "signature": "func (sb *StatusBar) UpdateForContext(focus FocusContext)", + "parent": null, + "doc": null + } + ], + "ShowSuccess": [ + { + "name": "ShowSuccess", + "type": "method", + "file": "cmd/tui/components/statusbar.go", + "line": 76, + "column": 0, + "signature": "func (sb *StatusBar) ShowSuccess(message string)", + "parent": null, + "doc": null + } + ], + "ShowInfo": [ + { + "name": "ShowInfo", + "type": "method", + "file": "cmd/tui/components/statusbar.go", + "line": 82, + "column": 0, + "signature": "func (sb *StatusBar) ShowInfo(message string)", + "parent": null, + "doc": null + } + ], + "ShowError": [ + { + "name": "ShowError", + "type": "method", + "file": "cmd/tui/components/statusbar.go", + "line": 88, + "column": 0, + "signature": "func (sb *StatusBar) ShowError(err error)", + "parent": null, + "doc": null + } + ], + "showTemporaryMessage": [ + { + "name": "showTemporaryMessage", + "type": "method", + "file": "cmd/tui/components/statusbar.go", + "line": 94, + "column": 0, + "signature": "func (sb *StatusBar) showTemporaryMessage(message string, duration time.Duration)", + "parent": null, + "doc": null + } + ], + "getShortcutsForContext": [ + { + "name": "getShortcutsForContext", + "type": "method", + "file": "cmd/tui/components/statusbar.go", + "line": 110, + "column": 0, + "signature": "func (sb *StatusBar) getShortcutsForContext(focus FocusContext) string", + "parent": null, + "doc": null + } + ], + "FocusContext": [ + { + "name": "FocusContext", + "type": "type", + "file": "cmd/tui/components/statusbar.go", + "line": 15, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "StatusBar": [ + { + "name": "StatusBar", + "type": "struct", + "file": "cmd/tui/components/statusbar.go", + "line": 29, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewCredentialTable": [ + { + "name": "NewCredentialTable", + "type": "function", + "file": "cmd/tui/components/table.go", + "line": 25, + "column": 0, + "signature": "func NewCredentialTable(appState *models.AppState) *CredentialTable", + "parent": null, + "doc": null + } + ], + "buildHeader": [ + { + "name": "buildHeader", + "type": "method", + "file": "cmd/tui/components/table.go", + "line": 59, + "column": 0, + "signature": "func (ct *CredentialTable) buildHeader()", + "parent": null, + "doc": null + } + ], + "applySelection": [ + { + "name": "applySelection", + "type": "method", + "file": "cmd/tui/components/table.go", + "line": 154, + "column": 0, + "signature": "func (ct *CredentialTable) applySelection(row int)", + "parent": null, + "doc": null + } + ], + "filterByCategory": [ + { + "name": "filterByCategory", + "type": "method", + "file": "cmd/tui/components/table.go", + "line": 176, + "column": 0, + "signature": "func (ct *CredentialTable) filterByCategory(creds []vault.CredentialMetadata, category string) []vault.CredentialMetadata", + "parent": null, + "doc": null + } + ], + "filterBySearch": [ + { + "name": "filterBySearch", + "type": "method", + "file": "cmd/tui/components/table.go", + "line": 192, + "column": 0, + "signature": "func (ct *CredentialTable) filterBySearch(creds []vault.CredentialMetadata, searchState *models.SearchState) []vault.CredentialMetadata", + "parent": null, + "doc": null + } + ], + "CredentialTable": [ + { + "name": "CredentialTable", + "type": "struct", + "file": "cmd/tui/components/table.go", + "line": 15, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "IsComponentVisible": [ + { + "name": "IsComponentVisible", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 16, + "column": 0, + "signature": "func IsComponentVisible(component models.FocusableComponent, mode layout.LayoutMode) bool", + "parent": null, + "doc": null + } + ], + "GetNextVisibleComponent": [ + { + "name": "GetNextVisibleComponent", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 37, + "column": 0, + "signature": "func GetNextVisibleComponent(current models.FocusableComponent, mode layout.LayoutMode) models.FocusableComponent", + "parent": null, + "doc": null + } + ], + "GetPreviousVisibleComponent": [ + { + "name": "GetPreviousVisibleComponent", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 76, + "column": 0, + "signature": "func GetPreviousVisibleComponent(current models.FocusableComponent, mode layout.LayoutMode) models.FocusableComponent", + "parent": null, + "doc": null + } + ], + "OnFocusChanged": [ + { + "name": "OnFocusChanged", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 114, + "column": 0, + "signature": "func OnFocusChanged(focus models.FocusableComponent, statusBar *components.StatusBar)", + "parent": null, + "doc": null + } + ], + "SetFocusToComponent": [ + { + "name": "SetFocusToComponent", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 133, + "column": 0, + "signature": "func SetFocusToComponent(nav *models.NavigationState, target models.FocusableComponent, mode layout.LayoutMode) error", + "parent": null, + "doc": null + } + ], + "FocusOnFirstCredential": [ + { + "name": "FocusOnFirstCredential", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 146, + "column": 0, + "signature": "func FocusOnFirstCredential(nav *models.NavigationState)", + "parent": null, + "doc": null + } + ], + "RestoreFocusAfterModal": [ + { + "name": "RestoreFocusAfterModal", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 152, + "column": 0, + "signature": "func RestoreFocusAfterModal(nav *models.NavigationState)", + "parent": null, + "doc": null + } + ], + "CycleFocusWithLayoutAwareness": [ + { + "name": "CycleFocusWithLayoutAwareness", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 158, + "column": 0, + "signature": "func CycleFocusWithLayoutAwareness(nav *models.NavigationState, layoutManager *layout.LayoutManager)", + "parent": null, + "doc": null + } + ], + "CycleFocusReverseWithLayoutAwareness": [ + { + "name": "CycleFocusReverseWithLayoutAwareness", + "type": "function", + "file": "cmd/tui/events/focus.go", + "line": 168, + "column": 0, + "signature": "func CycleFocusReverseWithLayoutAwareness(nav *models.NavigationState, layoutManager *layout.LayoutManager)", + "parent": null, + "doc": null + } + ], + "NewEventHandler": [ + { + "name": "NewEventHandler", + "type": "function", + "file": "cmd/tui/events/handlers.go", + "line": 29, + "column": 0, + "signature": "func NewEventHandler(\r\n\tapp *tview.Application,\r\n\tappState *models.AppState,\r\n\tnav *models.NavigationState,\r\n\tpageManager *layout.PageManager,\r\n\tstatusBar *components.StatusBar,\r\n\tdetailView *components.DetailView,\r\n\tlayoutMgr *layout.LayoutManager,\r\n\tcfg *config.Config,\r\n) *EventHandler", + "parent": null, + "doc": null + } + ], + "SetupGlobalShortcuts": [ + { + "name": "SetupGlobalShortcuts", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 53, + "column": 0, + "signature": "func (eh *EventHandler) SetupGlobalShortcuts()", + "parent": null, + "doc": null + } + ], + "handleGlobalKey": [ + { + "name": "handleGlobalKey", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 103, + "column": 0, + "signature": "func (eh *EventHandler) handleGlobalKey(event *tcell.EventKey) *tcell.EventKey", + "parent": null, + "doc": null + } + ], + "handleQuit": [ + { + "name": "handleQuit", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 187, + "column": 0, + "signature": "func (eh *EventHandler) handleQuit()", + "parent": null, + "doc": null + } + ], + "handleNewCredential": [ + { + "name": "handleNewCredential", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 199, + "column": 0, + "signature": "func (eh *EventHandler) handleNewCredential()", + "parent": null, + "doc": null + } + ], + "handleEditCredential": [ + { + "name": "handleEditCredential", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 219, + "column": 0, + "signature": "func (eh *EventHandler) handleEditCredential()", + "parent": null, + "doc": null + } + ], + "handleDeleteCredential": [ + { + "name": "handleDeleteCredential", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 245, + "column": 0, + "signature": "func (eh *EventHandler) handleDeleteCredential()", + "parent": null, + "doc": null + } + ], + "handleTogglePassword": [ + { + "name": "handleTogglePassword", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 273, + "column": 0, + "signature": "func (eh *EventHandler) handleTogglePassword()", + "parent": null, + "doc": null + } + ], + "handleCopyPassword": [ + { + "name": "handleCopyPassword", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 282, + "column": 0, + "signature": "func (eh *EventHandler) handleCopyPassword()", + "parent": null, + "doc": null + } + ], + "handleCopyField": [ + { + "name": "handleCopyField", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 296, + "column": 0, + "signature": "func (eh *EventHandler) handleCopyField(field string)", + "parent": null, + "doc": null + } + ], + "handleToggleDetailPanel": [ + { + "name": "handleToggleDetailPanel", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 317, + "column": 0, + "signature": "func (eh *EventHandler) handleToggleDetailPanel()", + "parent": null, + "doc": null + } + ], + "handleToggleSidebar": [ + { + "name": "handleToggleSidebar", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 329, + "column": 0, + "signature": "func (eh *EventHandler) handleToggleSidebar()", + "parent": null, + "doc": null + } + ], + "handleShowHelp": [ + { + "name": "handleShowHelp", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 339, + "column": 0, + "signature": "func (eh *EventHandler) handleShowHelp()", + "parent": null, + "doc": null + } + ], + "handleTabFocus": [ + { + "name": "handleTabFocus", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 497, + "column": 0, + "signature": "func (eh *EventHandler) handleTabFocus()", + "parent": null, + "doc": null + } + ], + "handleShiftTabFocus": [ + { + "name": "handleShiftTabFocus", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 502, + "column": 0, + "signature": "func (eh *EventHandler) handleShiftTabFocus()", + "parent": null, + "doc": null + } + ], + "handleSearchActivate": [ + { + "name": "handleSearchActivate", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 507, + "column": 0, + "signature": "func (eh *EventHandler) handleSearchActivate()", + "parent": null, + "doc": null + } + ], + "handleSearchDeactivate": [ + { + "name": "handleSearchDeactivate", + "type": "method", + "file": "cmd/tui/events/handlers.go", + "line": 572, + "column": 0, + "signature": "func (eh *EventHandler) handleSearchDeactivate()", + "parent": null, + "doc": null + } + ], + "EventHandler": [ + { + "name": "EventHandler", + "type": "struct", + "file": "cmd/tui/events/handlers.go", + "line": 17, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewLayoutManager": [ + { + "name": "NewLayoutManager", + "type": "function", + "file": "cmd/tui/layout/manager.go", + "line": 83, + "column": 0, + "signature": "func NewLayoutManager(app *tview.Application, appState *models.AppState, cfg *config.Config) *LayoutManager", + "parent": null, + "doc": null + } + ], + "determineDetailPosition": [ + { + "name": "determineDetailPosition", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 106, + "column": 0, + "signature": "func (lm *LayoutManager) determineDetailPosition() string", + "parent": null, + "doc": null + } + ], + "shouldShowDetailInMode": [ + { + "name": "shouldShowDetailInMode", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 122, + "column": 0, + "signature": "func (lm *LayoutManager) shouldShowDetailInMode(mode LayoutMode) bool", + "parent": null, + "doc": null + } + ], + "CreateMainLayout": [ + { + "name": "CreateMainLayout", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 154, + "column": 0, + "signature": "func (lm *LayoutManager) CreateMainLayout() *tview.Flex", + "parent": null, + "doc": null + } + ], + "HandleResize": [ + { + "name": "HandleResize", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 177, + "column": 0, + "signature": "func (lm *LayoutManager) HandleResize(width, height int)", + "parent": null, + "doc": null + } + ], + "RebuildLayout": [ + { + "name": "RebuildLayout", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 223, + "column": 0, + "signature": "func (lm *LayoutManager) RebuildLayout()", + "parent": null, + "doc": null + } + ], + "determineLayoutMode": [ + { + "name": "determineLayoutMode", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 342, + "column": 0, + "signature": "func (lm *LayoutManager) determineLayoutMode(width int) LayoutMode", + "parent": null, + "doc": null + } + ], + "GetCurrentMode": [ + { + "name": "GetCurrentMode", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 353, + "column": 0, + "signature": "func (lm *LayoutManager) GetCurrentMode() LayoutMode", + "parent": null, + "doc": null + } + ], + "SetBreakpoints": [ + { + "name": "SetBreakpoints", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 359, + "column": 0, + "signature": "func (lm *LayoutManager) SetBreakpoints(medium, large int)", + "parent": null, + "doc": null + } + ], + "SetPageManager": [ + { + "name": "SetPageManager", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 366, + "column": 0, + "signature": "func (lm *LayoutManager) SetPageManager(pm PageManagerInterface)", + "parent": null, + "doc": null + } + ], + "ToggleDetailPanel": [ + { + "name": "ToggleDetailPanel", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 376, + "column": 0, + "signature": "func (lm *LayoutManager) ToggleDetailPanel() string", + "parent": null, + "doc": null + } + ], + "shouldShowSidebar": [ + { + "name": "shouldShowSidebar", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 403, + "column": 0, + "signature": "func (lm *LayoutManager) shouldShowSidebar() bool", + "parent": null, + "doc": null + } + ], + "getTableArea": [ + { + "name": "getTableArea", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 414, + "column": 0, + "signature": "func (lm *LayoutManager) getTableArea() tview.Primitive", + "parent": null, + "doc": null + } + ], + "ToggleSidebar": [ + { + "name": "ToggleSidebar", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 437, + "column": 0, + "signature": "func (lm *LayoutManager) ToggleSidebar() string", + "parent": null, + "doc": null + } + ], + "GetSidebarOverride": [ + { + "name": "GetSidebarOverride", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 463, + "column": 0, + "signature": "func (lm *LayoutManager) GetSidebarOverride() *bool", + "parent": null, + "doc": null + } + ], + "SetSidebarOverride": [ + { + "name": "SetSidebarOverride", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 468, + "column": 0, + "signature": "func (lm *LayoutManager) SetSidebarOverride(override *bool)", + "parent": null, + "doc": null + } + ], + "ShouldShowSidebar": [ + { + "name": "ShouldShowSidebar", + "type": "method", + "file": "cmd/tui/layout/manager.go", + "line": 473, + "column": 0, + "signature": "func (lm *LayoutManager) ShouldShowSidebar() bool", + "parent": null, + "doc": null + } + ], + "LayoutMode": [ + { + "name": "LayoutMode", + "type": "type", + "file": "cmd/tui/layout/manager.go", + "line": 19, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "PageManagerInterface": [ + { + "name": "PageManagerInterface", + "type": "interface", + "file": "cmd/tui/layout/manager.go", + "line": 32, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "LayoutManager": [ + { + "name": "LayoutManager", + "type": "struct", + "file": "cmd/tui/layout/manager.go", + "line": 40, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewPageManager": [ + { + "name": "NewPageManager", + "type": "function", + "file": "cmd/tui/layout/pages.go", + "line": 45, + "column": 0, + "signature": "func NewPageManager(app *tview.Application) *PageManager", + "parent": null, + "doc": null + } + ], + "ShowPage": [ + { + "name": "ShowPage", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 61, + "column": 0, + "signature": "func (pm *PageManager) ShowPage(name string, primitive tview.Primitive) *PageManager", + "parent": null, + "doc": null + } + ], + "SwitchToPage": [ + { + "name": "SwitchToPage", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 67, + "column": 0, + "signature": "func (pm *PageManager) SwitchToPage(name string) *PageManager", + "parent": null, + "doc": null + } + ], + "ShowModal": [ + { + "name": "ShowModal", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 79, + "column": 0, + "signature": "func (pm *PageManager) ShowModal(name string, modal tview.Primitive, width, height int) *PageManager", + "parent": null, + "doc": null + } + ], + "ShowForm": [ + { + "name": "ShowForm", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 91, + "column": 0, + "signature": "func (pm *PageManager) ShowForm(form *tview.Form, title string) *PageManager", + "parent": null, + "doc": null + } + ], + "ShowModalWithAutoHeight": [ + { + "name": "ShowModalWithAutoHeight", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 110, + "column": 0, + "signature": "func (pm *PageManager) ShowModalWithAutoHeight(name string, form *tview.Form, width int) *PageManager", + "parent": null, + "doc": null + } + ], + "ShowConfirmDialog": [ + { + "name": "ShowConfirmDialog", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 141, + "column": 0, + "signature": "func (pm *PageManager) ShowConfirmDialog(title, message string, onYes, onNo func()) *PageManager", + "parent": null, + "doc": null + } + ], + "CloseModal": [ + { + "name": "CloseModal", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 163, + "column": 0, + "signature": "func (pm *PageManager) CloseModal(name string)", + "parent": null, + "doc": null + } + ], + "CloseTopModal": [ + { + "name": "CloseTopModal", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 182, + "column": 0, + "signature": "func (pm *PageManager) CloseTopModal()", + "parent": null, + "doc": null + } + ], + "HasModals": [ + { + "name": "HasModals", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 190, + "column": 0, + "signature": "func (pm *PageManager) HasModals() bool", + "parent": null, + "doc": null + } + ], + "centerModal": [ + { + "name": "centerModal", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 196, + "column": 0, + "signature": "func (pm *PageManager) centerModal(modal tview.Primitive, width, height int) tview.Primitive", + "parent": null, + "doc": null + } + ], + "setupEscapeHandler": [ + { + "name": "setupEscapeHandler", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 217, + "column": 0, + "signature": "func (pm *PageManager) setupEscapeHandler()", + "parent": null, + "doc": null + } + ], + "ShowSizeWarning": [ + { + "name": "ShowSizeWarning", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 232, + "column": 0, + "signature": "func (pm *PageManager) ShowSizeWarning(currentWidth, currentHeight, minWidth, minHeight int)", + "parent": null, + "doc": null + } + ], + "HideSizeWarning": [ + { + "name": "HideSizeWarning", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 283, + "column": 0, + "signature": "func (pm *PageManager) HideSizeWarning()", + "parent": null, + "doc": null + } + ], + "ApplyPendingWarnings": [ + { + "name": "ApplyPendingWarnings", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 295, + "column": 0, + "signature": "func (pm *PageManager) ApplyPendingWarnings()", + "parent": null, + "doc": null + } + ], + "IsSizeWarningActive": [ + { + "name": "IsSizeWarningActive", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 325, + "column": 0, + "signature": "func (pm *PageManager) IsSizeWarningActive() bool", + "parent": null, + "doc": null + } + ], + "ShowConfigValidationError": [ + { + "name": "ShowConfigValidationError", + "type": "method", + "file": "cmd/tui/layout/pages.go", + "line": 332, + "column": 0, + "signature": "func (pm *PageManager) ShowConfigValidationError(errors []string)", + "parent": null, + "doc": null + } + ], + "PageManager": [ + { + "name": "PageManager", + "type": "struct", + "file": "cmd/tui/layout/pages.go", + "line": 32, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewNavigationState": [ + { + "name": "NewNavigationState", + "type": "function", + "file": "cmd/tui/models/navigation.go", + "line": 31, + "column": 0, + "signature": "func NewNavigationState(app *tview.Application, appState *AppState) *NavigationState", + "parent": null, + "doc": null + } + ], + "SetFocusOrder": [ + { + "name": "SetFocusOrder", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 56, + "column": 0, + "signature": "func (ns *NavigationState) SetFocusOrder(order []tview.Primitive)", + "parent": null, + "doc": null + } + ], + "CycleFocus": [ + { + "name": "CycleFocus", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 63, + "column": 0, + "signature": "func (ns *NavigationState) CycleFocus()", + "parent": null, + "doc": null + } + ], + "CycleFocusReverse": [ + { + "name": "CycleFocusReverse", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 74, + "column": 0, + "signature": "func (ns *NavigationState) CycleFocusReverse()", + "parent": null, + "doc": null + } + ], + "SetFocus": [ + { + "name": "SetFocus", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 87, + "column": 0, + "signature": "func (ns *NavigationState) SetFocus(target FocusableComponent)", + "parent": null, + "doc": null + } + ], + "GetCurrentFocus": [ + { + "name": "GetCurrentFocus", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 95, + "column": 0, + "signature": "func (ns *NavigationState) GetCurrentFocus() FocusableComponent", + "parent": null, + "doc": null + } + ], + "SetOnFocusChanged": [ + { + "name": "SetOnFocusChanged", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 103, + "column": 0, + "signature": "func (ns *NavigationState) SetOnFocusChanged(callback func(FocusableComponent))", + "parent": null, + "doc": null + } + ], + "setFocus": [ + { + "name": "setFocus", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 109, + "column": 0, + "signature": "func (ns *NavigationState) setFocus(index int)", + "parent": null, + "doc": null + } + ], + "updateBorderColors": [ + { + "name": "updateBorderColors", + "type": "method", + "file": "cmd/tui/models/navigation.go", + "line": 128, + "column": 0, + "signature": "func (ns *NavigationState) updateBorderColors(activeIndex int)", + "parent": null, + "doc": null + } + ], + "FocusableComponent": [ + { + "name": "FocusableComponent", + "type": "type", + "file": "cmd/tui/models/navigation.go", + "line": 9, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NavigationState": [ + { + "name": "NavigationState", + "type": "struct", + "file": "cmd/tui/models/navigation.go", + "line": 19, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "MatchesCredential": [ + { + "name": "MatchesCredential", + "type": "method", + "file": "cmd/tui/models/search.go", + "line": 20, + "column": 0, + "signature": "func (ss *SearchState) MatchesCredential(cred *vault.CredentialMetadata) bool", + "parent": null, + "doc": null + } + ], + "Activate": [ + { + "name": "Activate", + "type": "method", + "file": "cmd/tui/models/search.go", + "line": 37, + "column": 0, + "signature": "func (ss *SearchState) Activate()", + "parent": null, + "doc": null + } + ], + "Deactivate": [ + { + "name": "Deactivate", + "type": "method", + "file": "cmd/tui/models/search.go", + "line": 45, + "column": 0, + "signature": "func (ss *SearchState) Deactivate()", + "parent": null, + "doc": null + } + ], + "SearchState": [ + { + "name": "SearchState", + "type": "struct", + "file": "cmd/tui/models/search.go", + "line": 12, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewSearchState": [ + { + "name": "NewSearchState", + "type": "function", + "file": "cmd/tui/models/state.go", + "line": 73, + "column": 0, + "signature": "func NewSearchState() *SearchState", + "parent": null, + "doc": null + } + ], + "NewAppState": [ + { + "name": "NewAppState", + "type": "function", + "file": "cmd/tui/models/state.go", + "line": 82, + "column": 0, + "signature": "func NewAppState(vaultService VaultService) *AppState", + "parent": null, + "doc": null + } + ], + "GetCredentials": [ + { + "name": "GetCredentials", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 92, + "column": 0, + "signature": "func (s *AppState) GetCredentials() []vault.CredentialMetadata", + "parent": null, + "doc": null + } + ], + "GetCategories": [ + { + "name": "GetCategories", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 99, + "column": 0, + "signature": "func (s *AppState) GetCategories() []string", + "parent": null, + "doc": null + } + ], + "GetSelectedCredential": [ + { + "name": "GetSelectedCredential", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 110, + "column": 0, + "signature": "func (s *AppState) GetSelectedCredential() *vault.CredentialMetadata", + "parent": null, + "doc": null + } + ], + "GetSelectedCategory": [ + { + "name": "GetSelectedCategory", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 117, + "column": 0, + "signature": "func (s *AppState) GetSelectedCategory() string", + "parent": null, + "doc": null + } + ], + "FindCredentialByService": [ + { + "name": "FindCredentialByService", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 125, + "column": 0, + "signature": "func (s *AppState) FindCredentialByService(service string) (*vault.CredentialMetadata, bool)", + "parent": null, + "doc": null + } + ], + "GetFullCredential": [ + { + "name": "GetFullCredential", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 140, + "column": 0, + "signature": "func (s *AppState) GetFullCredential(service string) (*vault.Credential, error)", + "parent": null, + "doc": null + } + ], + "GetFullCredentialWithTracking": [ + { + "name": "GetFullCredentialWithTracking", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 146, + "column": 0, + "signature": "func (s *AppState) GetFullCredentialWithTracking(service string, track bool) (*vault.Credential, error)", + "parent": null, + "doc": null + } + ], + "RecordFieldAccess": [ + { + "name": "RecordFieldAccess", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 155, + "column": 0, + "signature": "func (s *AppState) RecordFieldAccess(service, field string) error", + "parent": null, + "doc": null + }, + { + "name": "RecordFieldAccess", + "type": "method", + "file": "internal/vault/vault.go", + "line": 782, + "column": 0, + "signature": "func (v *VaultService) RecordFieldAccess(service, field string) error", + "parent": null, + "doc": null + } + ], + "LoadCredentials": [ + { + "name": "LoadCredentials", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 164, + "column": 0, + "signature": "func (s *AppState) LoadCredentials() error", + "parent": null, + "doc": null + } + ], + "AddCredential": [ + { + "name": "AddCredential", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 189, + "column": 0, + "signature": "func (s *AppState) AddCredential(service, username, password, category, url, notes string) error", + "parent": null, + "doc": null + }, + { + "name": "AddCredential", + "type": "method", + "file": "internal/vault/vault.go", + "line": 706, + "column": 0, + "signature": "func (v *VaultService) AddCredential(service, username string, password []byte, category, url, notes string) error", + "parent": null, + "doc": null + } + ], + "UpdateCredential": [ + { + "name": "UpdateCredential", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 224, + "column": 0, + "signature": "func (s *AppState) UpdateCredential(service string, opts UpdateCredentialOpts) error", + "parent": null, + "doc": null + }, + { + "name": "UpdateCredential", + "type": "method", + "file": "internal/vault/vault.go", + "line": 955, + "column": 0, + "signature": "func (v *VaultService) UpdateCredential(service string, opts UpdateOpts) error", + "parent": null, + "doc": null + } + ], + "DeleteCredential": [ + { + "name": "DeleteCredential", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 264, + "column": 0, + "signature": "func (s *AppState) DeleteCredential(service string) error", + "parent": null, + "doc": null + }, + { + "name": "DeleteCredential", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1042, + "column": 0, + "signature": "func (v *VaultService) DeleteCredential(service string) error", + "parent": null, + "doc": null + } + ], + "SetSelectedCategory": [ + { + "name": "SetSelectedCategory", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 295, + "column": 0, + "signature": "func (s *AppState) SetSelectedCategory(category string)", + "parent": null, + "doc": null + } + ], + "SetSelectedCredential": [ + { + "name": "SetSelectedCredential", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 306, + "column": 0, + "signature": "func (s *AppState) SetSelectedCredential(credential *vault.CredentialMetadata)", + "parent": null, + "doc": null + } + ], + "SetSelection": [ + { + "name": "SetSelection", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 333, + "column": 0, + "signature": "func (s *AppState) SetSelection(category string, credential *vault.CredentialMetadata)", + "parent": null, + "doc": null + } + ], + "SetSidebar": [ + { + "name": "SetSidebar", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 343, + "column": 0, + "signature": "func (s *AppState) SetSidebar(sidebar *tview.TreeView)", + "parent": null, + "doc": null + } + ], + "GetSidebar": [ + { + "name": "GetSidebar", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 350, + "column": 0, + "signature": "func (s *AppState) GetSidebar() *tview.TreeView", + "parent": null, + "doc": null + } + ], + "SetTable": [ + { + "name": "SetTable", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 357, + "column": 0, + "signature": "func (s *AppState) SetTable(table *tview.Table)", + "parent": null, + "doc": null + } + ], + "GetTable": [ + { + "name": "GetTable", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 364, + "column": 0, + "signature": "func (s *AppState) GetTable() *tview.Table", + "parent": null, + "doc": null + } + ], + "SetDetailView": [ + { + "name": "SetDetailView", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 371, + "column": 0, + "signature": "func (s *AppState) SetDetailView(view *tview.TextView)", + "parent": null, + "doc": null + } + ], + "GetDetailView": [ + { + "name": "GetDetailView", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 378, + "column": 0, + "signature": "func (s *AppState) GetDetailView() *tview.TextView", + "parent": null, + "doc": null + } + ], + "SetStatusBar": [ + { + "name": "SetStatusBar", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 385, + "column": 0, + "signature": "func (s *AppState) SetStatusBar(bar *tview.TextView)", + "parent": null, + "doc": null + } + ], + "GetStatusBar": [ + { + "name": "GetStatusBar", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 392, + "column": 0, + "signature": "func (s *AppState) GetStatusBar() *tview.TextView", + "parent": null, + "doc": null + } + ], + "SetSearchState": [ + { + "name": "SetSearchState", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 399, + "column": 0, + "signature": "func (s *AppState) SetSearchState(searchState *SearchState)", + "parent": null, + "doc": null + } + ], + "GetSearchState": [ + { + "name": "GetSearchState", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 406, + "column": 0, + "signature": "func (s *AppState) GetSearchState() *SearchState", + "parent": null, + "doc": null + } + ], + "SetOnCredentialsChanged": [ + { + "name": "SetOnCredentialsChanged", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 413, + "column": 0, + "signature": "func (s *AppState) SetOnCredentialsChanged(callback func())", + "parent": null, + "doc": null + } + ], + "SetOnSelectionChanged": [ + { + "name": "SetOnSelectionChanged", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 420, + "column": 0, + "signature": "func (s *AppState) SetOnSelectionChanged(callback func())", + "parent": null, + "doc": null + } + ], + "SetOnError": [ + { + "name": "SetOnError", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 427, + "column": 0, + "signature": "func (s *AppState) SetOnError(callback func(error))", + "parent": null, + "doc": null + } + ], + "SetOnFilterChanged": [ + { + "name": "SetOnFilterChanged", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 435, + "column": 0, + "signature": "func (s *AppState) SetOnFilterChanged(callback func())", + "parent": null, + "doc": null + } + ], + "notifyCredentialsChanged": [ + { + "name": "notifyCredentialsChanged", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 443, + "column": 0, + "signature": "func (s *AppState) notifyCredentialsChanged()", + "parent": null, + "doc": null + } + ], + "notifySelectionChanged": [ + { + "name": "notifySelectionChanged", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 456, + "column": 0, + "signature": "func (s *AppState) notifySelectionChanged()", + "parent": null, + "doc": null + } + ], + "TriggerRefresh": [ + { + "name": "TriggerRefresh", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 472, + "column": 0, + "signature": "func (s *AppState) TriggerRefresh()", + "parent": null, + "doc": null + } + ], + "TriggerFilterChanged": [ + { + "name": "TriggerFilterChanged", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 478, + "column": 0, + "signature": "func (s *AppState) TriggerFilterChanged()", + "parent": null, + "doc": null + } + ], + "notifyFilterChanged": [ + { + "name": "notifyFilterChanged", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 484, + "column": 0, + "signature": "func (s *AppState) notifyFilterChanged()", + "parent": null, + "doc": null + } + ], + "notifyError": [ + { + "name": "notifyError", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 497, + "column": 0, + "signature": "func (s *AppState) notifyError(err error)", + "parent": null, + "doc": null + } + ], + "updateCategories": [ + { + "name": "updateCategories", + "type": "method", + "file": "cmd/tui/models/state.go", + "line": 510, + "column": 0, + "signature": "func (s *AppState) updateCategories()", + "parent": null, + "doc": null + } + ], + "VaultService": [ + { + "name": "VaultService", + "type": "interface", + "file": "cmd/tui/models/state.go", + "line": 19, + "column": 0, + "signature": null, + "parent": null, + "doc": null + }, + { + "name": "VaultService", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 88, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "UpdateCredentialOpts": [ + { + "name": "UpdateCredentialOpts", + "type": "struct", + "file": "cmd/tui/models/state.go", + "line": 31, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "AppState": [ + { + "name": "AppState", + "type": "struct", + "file": "cmd/tui/models/state.go", + "line": 41, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "GetCurrentTheme": [ + { + "name": "GetCurrentTheme", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 174, + "column": 0, + "signature": "func GetCurrentTheme() ColorScheme", + "parent": null, + "doc": null + } + ], + "SetTheme": [ + { + "name": "SetTheme", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 181, + "column": 0, + "signature": "func SetTheme(name string) error", + "parent": null, + "doc": null + } + ], + "GetAvailableThemes": [ + { + "name": "GetAvailableThemes", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 198, + "column": 0, + "signature": "func GetAvailableThemes() []string", + "parent": null, + "doc": null + } + ], + "SetRoundedBorders": [ + { + "name": "SetRoundedBorders", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 203, + "column": 0, + "signature": "func SetRoundedBorders()", + "parent": null, + "doc": null + } + ], + "ApplyBorderedStyle": [ + { + "name": "ApplyBorderedStyle", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 214, + "column": 0, + "signature": "func ApplyBorderedStyle(p tview.Primitive, title string, active bool)", + "parent": null, + "doc": null + } + ], + "ApplyTableStyle": [ + { + "name": "ApplyTableStyle", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 274, + "column": 0, + "signature": "func ApplyTableStyle(table *tview.Table)", + "parent": null, + "doc": null + } + ], + "ApplyFormStyle": [ + { + "name": "ApplyFormStyle", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 286, + "column": 0, + "signature": "func ApplyFormStyle(form *tview.Form)", + "parent": null, + "doc": null + } + ], + "Lighten": [ + { + "name": "Lighten", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 307, + "column": 0, + "signature": "func Lighten(color tcell.Color, amount float64) tcell.Color", + "parent": null, + "doc": null + } + ], + "Darken": [ + { + "name": "Darken", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 316, + "column": 0, + "signature": "func Darken(color tcell.Color, amount float64) tcell.Color", + "parent": null, + "doc": null + } + ], + "clampUint8": [ + { + "name": "clampUint8", + "type": "function", + "file": "cmd/tui/styles/theme.go", + "line": 325, + "column": 0, + "signature": "func clampUint8(v float64) int32", + "parent": null, + "doc": null + } + ], + "ColorScheme": [ + { + "name": "ColorScheme", + "type": "struct", + "file": "cmd/tui/styles/theme.go", + "line": 11, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "GetDefaults": [ + { + "name": "GetDefaults", + "type": "function", + "file": "internal/config/config.go", + "line": 57, + "column": 0, + "signature": "func GetDefaults() *Config", + "parent": null, + "doc": null + } + ], + "GetConfigPath": [ + { + "name": "GetConfigPath", + "type": "function", + "file": "internal/config/config.go", + "line": 90, + "column": 0, + "signature": "func GetConfigPath() (string, error)", + "parent": null, + "doc": null + } + ], + "GetEditor": [ + { + "name": "GetEditor", + "type": "function", + "file": "internal/config/config.go", + "line": 113, + "column": 0, + "signature": "func GetEditor() (string, error)", + "parent": null, + "doc": null + } + ], + "OpenEditor": [ + { + "name": "OpenEditor", + "type": "function", + "file": "internal/config/config.go", + "line": 137, + "column": 0, + "signature": "func OpenEditor(filePath string) error", + "parent": null, + "doc": null + } + ], + "GetDefaultConfigTemplate": [ + { + "name": "GetDefaultConfigTemplate", + "type": "function", + "file": "internal/config/config.go", + "line": 153, + "column": 0, + "signature": "func GetDefaultConfigTemplate() string", + "parent": null, + "doc": null + } + ], + "detectUnknownFields": [ + { + "name": "detectUnknownFields", + "type": "function", + "file": "internal/config/config.go", + "line": 223, + "column": 0, + "signature": "func detectUnknownFields(v *viper.Viper) []ValidationWarning", + "parent": null, + "doc": null + } + ], + "shouldLogConfig": [ + { + "name": "shouldLogConfig", + "type": "function", + "file": "internal/config/config.go", + "line": 265, + "column": 0, + "signature": "func shouldLogConfig() bool", + "parent": null, + "doc": null + } + ], + "LoadFromPath": [ + { + "name": "LoadFromPath", + "type": "function", + "file": "internal/config/config.go", + "line": 269, + "column": 0, + "signature": "func LoadFromPath(configPath string) (*Config, *ValidationResult)", + "parent": null, + "doc": null + } + ], + "Load": [ + { + "name": "Load", + "type": "function", + "file": "internal/config/config.go", + "line": 390, + "column": 0, + "signature": "func Load() (*Config, *ValidationResult)", + "parent": null, + "doc": null + } + ], + "containsNullByte": [ + { + "name": "containsNullByte", + "type": "function", + "file": "internal/config/config.go", + "line": 592, + "column": 0, + "signature": "func containsNullByte(s string) bool", + "parent": null, + "doc": null + } + ], + "isPathWithVariable": [ + { + "name": "isPathWithVariable", + "type": "function", + "file": "internal/config/config.go", + "line": 602, + "column": 0, + "signature": "func isPathWithVariable(path string) bool", + "parent": null, + "doc": null + } + ], + "Validate": [ + { + "name": "Validate", + "type": "method", + "file": "internal/config/config.go", + "line": 406, + "column": 0, + "signature": "func (c *Config) Validate() *ValidationResult", + "parent": null, + "doc": null + }, + { + "name": "Validate", + "type": "method", + "file": "internal/security/password.go", + "line": 54, + "column": 0, + "signature": "func (p *PasswordPolicy) Validate(password []byte) error", + "parent": null, + "doc": null + } + ], + "validateTerminal": [ + { + "name": "validateTerminal", + "type": "method", + "file": "internal/config/config.go", + "line": 434, + "column": 0, + "signature": "func (c *Config) validateTerminal(result *ValidationResult) *ValidationResult", + "parent": null, + "doc": null + } + ], + "validateKeybindings": [ + { + "name": "validateKeybindings", + "type": "method", + "file": "internal/config/config.go", + "line": 494, + "column": 0, + "signature": "func (c *Config) validateKeybindings(result *ValidationResult) *ValidationResult", + "parent": null, + "doc": null + } + ], + "validateVaultPath": [ + { + "name": "validateVaultPath", + "type": "method", + "file": "internal/config/config.go", + "line": 544, + "column": 0, + "signature": "func (c *Config) validateVaultPath(result *ValidationResult) *ValidationResult", + "parent": null, + "doc": null + } + ], + "GetParsedKeybindings": [ + { + "name": "GetParsedKeybindings", + "type": "method", + "file": "internal/config/config.go", + "line": 617, + "column": 0, + "signature": "func (c *Config) GetParsedKeybindings() map[string]*Keybinding", + "parent": null, + "doc": null + } + ], + "validateTheme": [ + { + "name": "validateTheme", + "type": "method", + "file": "internal/config/config.go", + "line": 625, + "column": 0, + "signature": "func (c *Config) validateTheme(result *ValidationResult) *ValidationResult", + "parent": null, + "doc": null + } + ], + "Config": [ + { + "name": "Config", + "type": "struct", + "file": "internal/config/config.go", + "line": 14, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "TerminalConfig": [ + { + "name": "TerminalConfig", + "type": "struct", + "file": "internal/config/config.go", + "line": 28, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "ValidationResult": [ + { + "name": "ValidationResult", + "type": "struct", + "file": "internal/config/config.go", + "line": 37, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "ValidationError": [ + { + "name": "ValidationError", + "type": "struct", + "file": "internal/config/config.go", + "line": 44, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "ValidationWarning": [ + { + "name": "ValidationWarning", + "type": "struct", + "file": "internal/config/config.go", + "line": 51, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "GetValidActions": [ + { + "name": "GetValidActions", + "type": "function", + "file": "internal/config/keybinding.go", + "line": 37, + "column": 0, + "signature": "func GetValidActions() []string", + "parent": null, + "doc": null + } + ], + "ParseKeybinding": [ + { + "name": "ParseKeybinding", + "type": "function", + "file": "internal/config/keybinding.go", + "line": 49, + "column": 0, + "signature": "func ParseKeybinding(keyStr string) (tcell.Key, rune, tcell.ModMask, error)", + "parent": null, + "doc": null + } + ], + "ValidateActions": [ + { + "name": "ValidateActions", + "type": "function", + "file": "internal/config/keybinding.go", + "line": 161, + "column": 0, + "signature": "func ValidateActions(bindings map[string]string) []string", + "parent": null, + "doc": null + } + ], + "DetectKeybindingConflicts": [ + { + "name": "DetectKeybindingConflicts", + "type": "function", + "file": "internal/config/keybinding.go", + "line": 181, + "column": 0, + "signature": "func DetectKeybindingConflicts(bindings map[string]string) []string", + "parent": null, + "doc": null + } + ], + "GetDisplayString": [ + { + "name": "GetDisplayString", + "type": "function", + "file": "internal/config/keybinding.go", + "line": 249, + "column": 0, + "signature": "func GetDisplayString(keyStr string) string", + "parent": null, + "doc": null + } + ], + "GetKeybindingForAction": [ + { + "name": "GetKeybindingForAction", + "type": "method", + "file": "internal/config/keybinding.go", + "line": 208, + "column": 0, + "signature": "func (c *Config) GetKeybindingForAction(action string) string", + "parent": null, + "doc": null + } + ], + "MatchesKeybinding": [ + { + "name": "MatchesKeybinding", + "type": "method", + "file": "internal/config/keybinding.go", + "line": 217, + "column": 0, + "signature": "func (c *Config) MatchesKeybinding(event *tcell.EventKey, action string) bool", + "parent": null, + "doc": null + } + ], + "Keybinding": [ + { + "name": "Keybinding", + "type": "struct", + "file": "internal/config/keybinding.go", + "line": 12, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewCryptoService": [ + { + "name": "NewCryptoService", + "type": "function", + "file": "internal/crypto/crypto.go", + "line": 36, + "column": 0, + "signature": "func NewCryptoService() *CryptoService", + "parent": null, + "doc": null + } + ], + "ClearBytes": [ + { + "name": "ClearBytes", + "type": "function", + "file": "internal/crypto/crypto.go", + "line": 156, + "column": 0, + "signature": "func ClearBytes(data []byte)", + "parent": null, + "doc": null + } + ], + "GetIterations": [ + { + "name": "GetIterations", + "type": "function", + "file": "internal/crypto/crypto.go", + "line": 171, + "column": 0, + "signature": "func GetIterations() int", + "parent": null, + "doc": null + }, + { + "name": "GetIterations", + "type": "method", + "file": "internal/storage/storage.go", + "line": 360, + "column": 0, + "signature": "func (s *StorageService) GetIterations() int", + "parent": null, + "doc": null + } + ], + "GenerateSalt": [ + { + "name": "GenerateSalt", + "type": "method", + "file": "internal/crypto/crypto.go", + "line": 40, + "column": 0, + "signature": "func (c *CryptoService) GenerateSalt() ([]byte, error)", + "parent": null, + "doc": null + } + ], + "DeriveKey": [ + { + "name": "DeriveKey", + "type": "method", + "file": "internal/crypto/crypto.go", + "line": 48, + "column": 0, + "signature": "func (c *CryptoService) DeriveKey(password []byte, salt []byte, iterations int) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "Encrypt": [ + { + "name": "Encrypt", + "type": "method", + "file": "internal/crypto/crypto.go", + "line": 58, + "column": 0, + "signature": "func (c *CryptoService) Encrypt(data []byte, key []byte) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "Decrypt": [ + { + "name": "Decrypt", + "type": "method", + "file": "internal/crypto/crypto.go", + "line": 93, + "column": 0, + "signature": "func (c *CryptoService) Decrypt(encryptedData []byte, key []byte) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "SecureRandom": [ + { + "name": "SecureRandom", + "type": "method", + "file": "internal/crypto/crypto.go", + "line": 127, + "column": 0, + "signature": "func (c *CryptoService) SecureRandom(length int) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "ClearKey": [ + { + "name": "ClearKey", + "type": "method", + "file": "internal/crypto/crypto.go", + "line": 140, + "column": 0, + "signature": "func (c *CryptoService) ClearKey(key []byte)", + "parent": null, + "doc": null + } + ], + "ClearData": [ + { + "name": "ClearData", + "type": "method", + "file": "internal/crypto/crypto.go", + "line": 146, + "column": 0, + "signature": "func (c *CryptoService) ClearData(data []byte)", + "parent": null, + "doc": null + } + ], + "CryptoService": [ + { + "name": "CryptoService", + "type": "struct", + "file": "internal/crypto/crypto.go", + "line": 34, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewBackupChecker": [ + { + "name": "NewBackupChecker", + "type": "function", + "file": "internal/health/backup.go", + "line": 17, + "column": 0, + "signature": "func NewBackupChecker(vaultDir string) HealthChecker", + "parent": null, + "doc": null + } + ], + "Name": [ + { + "name": "Name", + "type": "method", + "file": "internal/health/backup.go", + "line": 24, + "column": 0, + "signature": "func (b *BackupChecker) Name() string", + "parent": null, + "doc": null + }, + { + "name": "Name", + "type": "method", + "file": "internal/health/config.go", + "line": 25, + "column": 0, + "signature": "func (c *ConfigChecker) Name() string", + "parent": null, + "doc": null + }, + { + "name": "Name", + "type": "method", + "file": "internal/health/keychain.go", + "line": 25, + "column": 0, + "signature": "func (k *KeychainChecker) Name() string", + "parent": null, + "doc": null + }, + { + "name": "Name", + "type": "method", + "file": "internal/health/vault.go", + "line": 23, + "column": 0, + "signature": "func (v *VaultChecker) Name() string", + "parent": null, + "doc": null + }, + { + "name": "Name", + "type": "method", + "file": "internal/health/version.go", + "line": 30, + "column": 0, + "signature": "func (v *VersionChecker) Name() string", + "parent": null, + "doc": null + } + ], + "BackupChecker": [ + { + "name": "BackupChecker", + "type": "struct", + "file": "internal/health/backup.go", + "line": 12, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "RunChecks": [ + { + "name": "RunChecks", + "type": "function", + "file": "internal/health/checker.go", + "line": 77, + "column": 0, + "signature": "func RunChecks(ctx context.Context, opts CheckOptions) HealthReport", + "parent": null, + "doc": null + } + ], + "buildSummary": [ + { + "name": "buildSummary", + "type": "function", + "file": "internal/health/checker.go", + "line": 105, + "column": 0, + "signature": "func buildSummary(results []CheckResult) HealthSummary", + "parent": null, + "doc": null + } + ], + "DetermineExitCode": [ + { + "name": "DetermineExitCode", + "type": "method", + "file": "internal/health/checker.go", + "line": 66, + "column": 0, + "signature": "func (s HealthSummary) DetermineExitCode() int", + "parent": "HealthSummary", + "doc": null + } + ], + "CheckStatus": [ + { + "name": "CheckStatus", + "type": "type", + "file": "internal/health/checker.go", + "line": 17, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "HealthChecker": [ + { + "name": "HealthChecker", + "type": "interface", + "file": "internal/health/checker.go", + "line": 26, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "CheckResult": [ + { + "name": "CheckResult", + "type": "struct", + "file": "internal/health/checker.go", + "line": 32, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "HealthSummary": [ + { + "name": "HealthSummary", + "type": "struct", + "file": "internal/health/checker.go", + "line": 41, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "HealthReport": [ + { + "name": "HealthReport", + "type": "struct", + "file": "internal/health/checker.go", + "line": 49, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "CheckOptions": [ + { + "name": "CheckOptions", + "type": "struct", + "file": "internal/health/checker.go", + "line": 56, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewConfigChecker": [ + { + "name": "NewConfigChecker", + "type": "function", + "file": "internal/health/config.go", + "line": 18, + "column": 0, + "signature": "func NewConfigChecker(configPath string) HealthChecker", + "parent": null, + "doc": null + } + ], + "ConfigChecker": [ + { + "name": "ConfigChecker", + "type": "struct", + "file": "internal/health/config.go", + "line": 13, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewKeychainChecker": [ + { + "name": "NewKeychainChecker", + "type": "function", + "file": "internal/health/keychain.go", + "line": 17, + "column": 0, + "signature": "func NewKeychainChecker(defaultVaultPath string) HealthChecker", + "parent": null, + "doc": null + } + ], + "getKeychainBackend": [ + { + "name": "getKeychainBackend", + "type": "method", + "file": "internal/health/keychain.go", + "line": 112, + "column": 0, + "signature": "func (k *KeychainChecker) getKeychainBackend() string", + "parent": null, + "doc": null + } + ], + "checkVaultExists": [ + { + "name": "checkVaultExists", + "type": "method", + "file": "internal/health/keychain.go", + "line": 126, + "column": 0, + "signature": "func (k *KeychainChecker) checkVaultExists(path string) bool", + "parent": null, + "doc": null + } + ], + "checkOrphanedEntries": [ + { + "name": "checkOrphanedEntries", + "type": "method", + "file": "internal/health/keychain.go", + "line": 133, + "column": 0, + "signature": "func (k *KeychainChecker) checkOrphanedEntries(service string, details *KeychainCheckDetails) int", + "parent": null, + "doc": null + } + ], + "KeychainChecker": [ + { + "name": "KeychainChecker", + "type": "struct", + "file": "internal/health/keychain.go", + "line": 11, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewGoKeyringService": [ + { + "name": "NewGoKeyringService", + "type": "function", + "file": "internal/health/keyring_production.go", + "line": 13, + "column": 0, + "signature": "func NewGoKeyringService() KeyringService", + "parent": null, + "doc": null + } + ], + "Get": [ + { + "name": "Get", + "type": "method", + "file": "internal/health/keyring_production.go", + "line": 18, + "column": 0, + "signature": "func (g *goKeyringService) Get(service, user string) (string, error)", + "parent": null, + "doc": null + } + ], + "List": [ + { + "name": "List", + "type": "method", + "file": "internal/health/keyring_production.go", + "line": 24, + "column": 0, + "signature": "func (g *goKeyringService) List(service string) ([]KeyringEntry, error)", + "parent": null, + "doc": null + } + ], + "goKeyringService": [ + { + "name": "goKeyringService", + "type": "struct", + "file": "internal/health/keyring_production.go", + "line": 10, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "KeyringService": [ + { + "name": "KeyringService", + "type": "interface", + "file": "internal/health/keyring_service.go", + "line": 5, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "KeyringEntry": [ + { + "name": "KeyringEntry", + "type": "struct", + "file": "internal/health/keyring_service.go", + "line": 16, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "VersionCheckDetails": [ + { + "name": "VersionCheckDetails", + "type": "struct", + "file": "internal/health/types.go", + "line": 6, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "VaultCheckDetails": [ + { + "name": "VaultCheckDetails", + "type": "struct", + "file": "internal/health/types.go", + "line": 15, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "ConfigCheckDetails": [ + { + "name": "ConfigCheckDetails", + "type": "struct", + "file": "internal/health/types.go", + "line": 25, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "ConfigError": [ + { + "name": "ConfigError", + "type": "struct", + "file": "internal/health/types.go", + "line": 34, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "KeychainCheckDetails": [ + { + "name": "KeychainCheckDetails", + "type": "struct", + "file": "internal/health/types.go", + "line": 42, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "KeychainEntry": [ + { + "name": "KeychainEntry", + "type": "struct", + "file": "internal/health/types.go", + "line": 51, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "BackupCheckDetails": [ + { + "name": "BackupCheckDetails", + "type": "struct", + "file": "internal/health/types.go", + "line": 58, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "BackupFile": [ + { + "name": "BackupFile", + "type": "struct", + "file": "internal/health/types.go", + "line": 65, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewVaultChecker": [ + { + "name": "NewVaultChecker", + "type": "function", + "file": "internal/health/vault.go", + "line": 16, + "column": 0, + "signature": "func NewVaultChecker(vaultPath string) HealthChecker", + "parent": null, + "doc": null + } + ], + "VaultChecker": [ + { + "name": "VaultChecker", + "type": "struct", + "file": "internal/health/vault.go", + "line": 11, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewVersionChecker": [ + { + "name": "NewVersionChecker", + "type": "function", + "file": "internal/health/version.go", + "line": 21, + "column": 0, + "signature": "func NewVersionChecker(currentVersion string, githubRepo string) HealthChecker", + "parent": null, + "doc": null + } + ], + "fetchLatestRelease": [ + { + "name": "fetchLatestRelease", + "type": "method", + "file": "internal/health/version.go", + "line": 78, + "column": 0, + "signature": "func (v *VersionChecker) fetchLatestRelease(ctx context.Context) (string, string, error)", + "parent": null, + "doc": null + } + ], + "isNewer": [ + { + "name": "isNewer", + "type": "method", + "file": "internal/health/version.go", + "line": 121, + "column": 0, + "signature": "func (v *VersionChecker) isNewer(a, b string) bool", + "parent": null, + "doc": null + } + ], + "VersionChecker": [ + { + "name": "VersionChecker", + "type": "struct", + "file": "internal/health/version.go", + "line": 14, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "New": [ + { + "name": "New", + "type": "function", + "file": "internal/keychain/keychain.go", + "line": 30, + "column": 0, + "signature": "func New() *KeychainService", + "parent": null, + "doc": null + }, + { + "name": "New", + "type": "function", + "file": "internal/vault/vault.go", + "line": 108, + "column": 0, + "signature": "func New(vaultPath string) (*VaultService, error)", + "parent": null, + "doc": null + } + ], + "Ping": [ + { + "name": "Ping", + "type": "method", + "file": "internal/keychain/keychain.go", + "line": 36, + "column": 0, + "signature": "func (ks *KeychainService) Ping() error", + "parent": null, + "doc": null + } + ], + "IsAvailable": [ + { + "name": "IsAvailable", + "type": "method", + "file": "internal/keychain/keychain.go", + "line": 56, + "column": 0, + "signature": "func (ks *KeychainService) IsAvailable() bool", + "parent": null, + "doc": null + } + ], + "Store": [ + { + "name": "Store", + "type": "method", + "file": "internal/keychain/keychain.go", + "line": 66, + "column": 0, + "signature": "func (ks *KeychainService) Store(password string) error", + "parent": null, + "doc": null + } + ], + "Retrieve": [ + { + "name": "Retrieve", + "type": "method", + "file": "internal/keychain/keychain.go", + "line": 78, + "column": 0, + "signature": "func (ks *KeychainService) Retrieve() (string, error)", + "parent": null, + "doc": null + } + ], + "Delete": [ + { + "name": "Delete", + "type": "method", + "file": "internal/keychain/keychain.go", + "line": 95, + "column": 0, + "signature": "func (ks *KeychainService) Delete() error", + "parent": null, + "doc": null + } + ], + "Clear": [ + { + "name": "Clear", + "type": "method", + "file": "internal/keychain/keychain.go", + "line": 105, + "column": 0, + "signature": "func (ks *KeychainService) Clear() error", + "parent": null, + "doc": null + } + ], + "KeychainService": [ + { + "name": "KeychainService", + "type": "struct", + "file": "internal/keychain/keychain.go", + "line": 25, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "selectChallengePositions": [ + { + "name": "selectChallengePositions", + "type": "function", + "file": "internal/recovery/challenge.go", + "line": 14, + "column": 0, + "signature": "func selectChallengePositions(totalWords, count int) ([]int, error)", + "parent": null, + "doc": null + } + ], + "SelectVerifyPositions": [ + { + "name": "SelectVerifyPositions", + "type": "function", + "file": "internal/recovery/challenge.go", + "line": 52, + "column": 0, + "signature": "func SelectVerifyPositions(count int) ([]int, error)", + "parent": null, + "doc": null + } + ], + "splitWords": [ + { + "name": "splitWords", + "type": "function", + "file": "internal/recovery/challenge.go", + "line": 59, + "column": 0, + "signature": "func splitWords(mnemonic string, challengePos []int) (challenge, stored []string)", + "parent": null, + "doc": null + } + ], + "ShuffleChallengePositions": [ + { + "name": "ShuffleChallengePositions", + "type": "function", + "file": "internal/recovery/challenge.go", + "line": 87, + "column": 0, + "signature": "func ShuffleChallengePositions(positions []int) []int", + "parent": null, + "doc": null + } + ], + "reconstructMnemonic": [ + { + "name": "reconstructMnemonic", + "type": "function", + "file": "internal/recovery/challenge.go", + "line": 107, + "column": 0, + "signature": "func reconstructMnemonic(challengeWords []string, challengePos []int, storedWords []string) (string, error)", + "parent": null, + "doc": null + } + ], + "deriveKey": [ + { + "name": "deriveKey", + "type": "function", + "file": "internal/recovery/crypto.go", + "line": 18, + "column": 0, + "signature": "func deriveKey(seed, salt []byte, params *vault.KDFParams) []byte", + "parent": null, + "doc": null + } + ], + "encryptStoredWords": [ + { + "name": "encryptStoredWords", + "type": "function", + "file": "internal/recovery/crypto.go", + "line": 35, + "column": 0, + "signature": "func encryptStoredWords(words []string, key []byte) (ciphertext, nonce []byte, err error)", + "parent": null, + "doc": null + } + ], + "decryptStoredWords": [ + { + "name": "decryptStoredWords", + "type": "function", + "file": "internal/recovery/crypto.go", + "line": 70, + "column": 0, + "signature": "func decryptStoredWords(ciphertext, nonce, key []byte) ([]string, error)", + "parent": null, + "doc": null + } + ], + "GenerateMnemonic": [ + { + "name": "GenerateMnemonic", + "type": "function", + "file": "internal/recovery/mnemonic.go", + "line": 13, + "column": 0, + "signature": "func GenerateMnemonic() (string, error)", + "parent": null, + "doc": null + } + ], + "ValidateWord": [ + { + "name": "ValidateWord", + "type": "function", + "file": "internal/recovery/mnemonic.go", + "line": 33, + "column": 0, + "signature": "func ValidateWord(word string) bool", + "parent": null, + "doc": null + } + ], + "ValidateMnemonic": [ + { + "name": "ValidateMnemonic", + "type": "function", + "file": "internal/recovery/mnemonic.go", + "line": 53, + "column": 0, + "signature": "func ValidateMnemonic(mnemonic string) bool", + "parent": null, + "doc": null + } + ], + "SetupRecovery": [ + { + "name": "SetupRecovery", + "type": "function", + "file": "internal/recovery/recovery.go", + "line": 45, + "column": 0, + "signature": "func SetupRecovery(config *SetupConfig) (*SetupResult, error)", + "parent": null, + "doc": null + } + ], + "PerformRecovery": [ + { + "name": "PerformRecovery", + "type": "function", + "file": "internal/recovery/recovery.go", + "line": 144, + "column": 0, + "signature": "func PerformRecovery(config *RecoveryConfig) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "decryptData": [ + { + "name": "decryptData", + "type": "function", + "file": "internal/recovery/recovery.go", + "line": 257, + "column": 0, + "signature": "func decryptData(ciphertext, nonce, key []byte) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "VerifyBackup": [ + { + "name": "VerifyBackup", + "type": "function", + "file": "internal/recovery/recovery.go", + "line": 282, + "column": 0, + "signature": "func VerifyBackup(config *VerifyConfig) error", + "parent": null, + "doc": null + } + ], + "encryptData": [ + { + "name": "encryptData", + "type": "function", + "file": "internal/recovery/recovery.go", + "line": 322, + "column": 0, + "signature": "func encryptData(plaintext, key []byte) (ciphertext, nonce []byte, err error)", + "parent": null, + "doc": null + } + ], + "SetupConfig": [ + { + "name": "SetupConfig", + "type": "struct", + "file": "internal/recovery/recovery.go", + "line": 16, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "SetupResult": [ + { + "name": "SetupResult", + "type": "struct", + "file": "internal/recovery/recovery.go", + "line": 22, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "RecoveryConfig": [ + { + "name": "RecoveryConfig", + "type": "struct", + "file": "internal/recovery/recovery.go", + "line": 29, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "VerifyConfig": [ + { + "name": "VerifyConfig", + "type": "struct", + "file": "internal/recovery/recovery.go", + "line": 36, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "GetOrCreateAuditKey": [ + { + "name": "GetOrCreateAuditKey", + "type": "function", + "file": "internal/security/audit.go", + "line": 205, + "column": 0, + "signature": "func GetOrCreateAuditKey(vaultID string) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "DeleteAuditKey": [ + { + "name": "DeleteAuditKey", + "type": "function", + "file": "internal/security/audit.go", + "line": 236, + "column": 0, + "signature": "func DeleteAuditKey(vaultID string) error", + "parent": null, + "doc": null + } + ], + "NewAuditLogger": [ + { + "name": "NewAuditLogger", + "type": "function", + "file": "internal/security/audit.go", + "line": 247, + "column": 0, + "signature": "func NewAuditLogger(filePath string, vaultID string) (*AuditLogger, error)", + "parent": null, + "doc": null + } + ], + "Sign": [ + { + "name": "Sign", + "type": "method", + "file": "internal/security/audit.go", + "line": 70, + "column": 0, + "signature": "func (e *AuditLogEntry) Sign(key []byte) error", + "parent": null, + "doc": null + } + ], + "Verify": [ + { + "name": "Verify", + "type": "method", + "file": "internal/security/audit.go", + "line": 88, + "column": 0, + "signature": "func (e *AuditLogEntry) Verify(key []byte) error", + "parent": null, + "doc": null + } + ], + "ShouldRotate": [ + { + "name": "ShouldRotate", + "type": "method", + "file": "internal/security/audit.go", + "line": 111, + "column": 0, + "signature": "func (l *AuditLogger) ShouldRotate() bool", + "parent": null, + "doc": null + } + ], + "Rotate": [ + { + "name": "Rotate", + "type": "method", + "file": "internal/security/audit.go", + "line": 118, + "column": 0, + "signature": "func (l *AuditLogger) Rotate() error", + "parent": null, + "doc": null + } + ], + "Log": [ + { + "name": "Log", + "type": "method", + "file": "internal/security/audit.go", + "line": 157, + "column": 0, + "signature": "func (l *AuditLogger) Log(entry *AuditLogEntry) error", + "parent": null, + "doc": null + } + ], + "AuditLogEntry": [ + { + "name": "AuditLogEntry", + "type": "struct", + "file": "internal/security/audit.go", + "line": 18, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "AuditLogger": [ + { + "name": "AuditLogger", + "type": "struct", + "file": "internal/security/audit.go", + "line": 61, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewValidationRateLimiter": [ + { + "name": "NewValidationRateLimiter", + "type": "function", + "file": "internal/security/password.go", + "line": 179, + "column": 0, + "signature": "func NewValidationRateLimiter() *ValidationRateLimiter", + "parent": null, + "doc": null + } + ], + "String": [ + { + "name": "String", + "type": "method", + "file": "internal/security/password.go", + "line": 39, + "column": 0, + "signature": "func (s PasswordStrength) String() string", + "parent": "PasswordStrength", + "doc": null + } + ], + "Strength": [ + { + "name": "Strength", + "type": "method", + "file": "internal/security/password.go", + "line": 105, + "column": 0, + "signature": "func (p *PasswordPolicy) Strength(password []byte) PasswordStrength", + "parent": null, + "doc": null + } + ], + "CheckAndRecordFailure": [ + { + "name": "CheckAndRecordFailure", + "type": "method", + "file": "internal/security/password.go", + "line": 185, + "column": 0, + "signature": "func (rl *ValidationRateLimiter) CheckAndRecordFailure() error", + "parent": null, + "doc": null + } + ], + "Reset": [ + { + "name": "Reset", + "type": "method", + "file": "internal/security/password.go", + "line": 217, + "column": 0, + "signature": "func (rl *ValidationRateLimiter) Reset()", + "parent": null, + "doc": null + } + ], + "PasswordPolicy": [ + { + "name": "PasswordPolicy", + "type": "struct", + "file": "internal/security/password.go", + "line": 12, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "PasswordStrength": [ + { + "name": "PasswordStrength", + "type": "type", + "file": "internal/security/password.go", + "line": 31, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "ValidationRateLimiter": [ + { + "name": "ValidationRateLimiter", + "type": "struct", + "file": "internal/security/password.go", + "line": 171, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "randomHexSuffix": [ + { + "name": "randomHexSuffix", + "type": "function", + "file": "internal/storage/atomic_save.go", + "line": 22, + "column": 0, + "signature": "func randomHexSuffix(length int) string", + "parent": null, + "doc": null + } + ], + "generateTempFileName": [ + { + "name": "generateTempFileName", + "type": "method", + "file": "internal/storage/atomic_save.go", + "line": 15, + "column": 0, + "signature": "func (s *StorageService) generateTempFileName() string", + "parent": null, + "doc": null + } + ], + "writeToTempFile": [ + { + "name": "writeToTempFile", + "type": "method", + "file": "internal/storage/atomic_save.go", + "line": 34, + "column": 0, + "signature": "func (s *StorageService) writeToTempFile(path string, data []byte) error", + "parent": null, + "doc": null + } + ], + "verifyTempFile": [ + { + "name": "verifyTempFile", + "type": "method", + "file": "internal/storage/atomic_save.go", + "line": 65, + "column": 0, + "signature": "func (s *StorageService) verifyTempFile(path string, password string) error", + "parent": null, + "doc": null + } + ], + "atomicRename": [ + { + "name": "atomicRename", + "type": "method", + "file": "internal/storage/atomic_save.go", + "line": 101, + "column": 0, + "signature": "func (s *StorageService) atomicRename(oldPath, newPath string) error", + "parent": null, + "doc": null + } + ], + "cleanupTempFile": [ + { + "name": "cleanupTempFile", + "type": "method", + "file": "internal/storage/atomic_save.go", + "line": 119, + "column": 0, + "signature": "func (s *StorageService) cleanupTempFile(path string) error", + "parent": null, + "doc": null + } + ], + "cleanupOrphanedTempFiles": [ + { + "name": "cleanupOrphanedTempFiles", + "type": "method", + "file": "internal/storage/atomic_save.go", + "line": 129, + "column": 0, + "signature": "func (s *StorageService) cleanupOrphanedTempFiles(currentTempPath string)", + "parent": null, + "doc": null + } + ], + "validateVaultStructure": [ + { + "name": "validateVaultStructure", + "type": "function", + "file": "internal/storage/backup.go", + "line": 191, + "column": 0, + "signature": "func validateVaultStructure(data []byte) error", + "parent": null, + "doc": null + } + ], + "generateManualBackupPath": [ + { + "name": "generateManualBackupPath", + "type": "method", + "file": "internal/storage/backup.go", + "line": 49, + "column": 0, + "signature": "func (s *StorageService) generateManualBackupPath() string", + "parent": null, + "doc": null + } + ], + "CreateManualBackup": [ + { + "name": "CreateManualBackup", + "type": "method", + "file": "internal/storage/backup.go", + "line": 59, + "column": 0, + "signature": "func (s *StorageService) CreateManualBackup() (string, error)", + "parent": null, + "doc": null + } + ], + "ListBackups": [ + { + "name": "ListBackups", + "type": "method", + "file": "internal/storage/backup.go", + "line": 83, + "column": 0, + "signature": "func (s *StorageService) ListBackups() ([]BackupInfo, error)", + "parent": null, + "doc": null + } + ], + "FindNewestBackup": [ + { + "name": "FindNewestBackup", + "type": "method", + "file": "internal/storage/backup.go", + "line": 134, + "column": 0, + "signature": "func (s *StorageService) FindNewestBackup() (*BackupInfo, error)", + "parent": null, + "doc": null + } + ], + "verifyBackupIntegrity": [ + { + "name": "verifyBackupIntegrity", + "type": "method", + "file": "internal/storage/backup.go", + "line": 155, + "column": 0, + "signature": "func (s *StorageService) verifyBackupIntegrity(backupPath string) error", + "parent": null, + "doc": null + } + ], + "copyFile": [ + { + "name": "copyFile", + "type": "method", + "file": "internal/storage/backup.go", + "line": 218, + "column": 0, + "signature": "func (s *StorageService) copyFile(src, dst string) error", + "parent": null, + "doc": null + } + ], + "BackupInfo": [ + { + "name": "BackupInfo", + "type": "struct", + "file": "internal/storage/backup.go", + "line": 38, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "actionableErrorMessage": [ + { + "name": "actionableErrorMessage", + "type": "function", + "file": "internal/storage/errors.go", + "line": 25, + "column": 0, + "signature": "func actionableErrorMessage(err error) error", + "parent": null, + "doc": null + } + ], + "criticalErrorMessage": [ + { + "name": "criticalErrorMessage", + "type": "function", + "file": "internal/storage/errors.go", + "line": 52, + "column": 0, + "signature": "func criticalErrorMessage(err error) error", + "parent": null, + "doc": null + } + ], + "NewOSFileSystem": [ + { + "name": "NewOSFileSystem", + "type": "function", + "file": "internal/storage/filesystem.go", + "line": 29, + "column": 0, + "signature": "func NewOSFileSystem() FileSystem", + "parent": null, + "doc": null + } + ], + "OpenFile": [ + { + "name": "OpenFile", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 33, + "column": 0, + "signature": "func (f *osFileSystem) OpenFile(name string, flag int, perm os.FileMode) (*os.File, error)", + "parent": null, + "doc": null + }, + { + "name": "OpenFile", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 40, + "column": 0, + "signature": "func (s *spyFileSystem) OpenFile(name string, flag int, perm os.FileMode) (*os.File, error)", + "parent": null, + "doc": null + } + ], + "ReadFile": [ + { + "name": "ReadFile", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 38, + "column": 0, + "signature": "func (f *osFileSystem) ReadFile(name string) ([]byte, error)", + "parent": null, + "doc": null + }, + { + "name": "ReadFile", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 50, + "column": 0, + "signature": "func (s *spyFileSystem) ReadFile(name string) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "WriteFile": [ + { + "name": "WriteFile", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 43, + "column": 0, + "signature": "func (f *osFileSystem) WriteFile(name string, data []byte, perm os.FileMode) error", + "parent": null, + "doc": null + }, + { + "name": "WriteFile", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 61, + "column": 0, + "signature": "func (s *spyFileSystem) WriteFile(name string, data []byte, perm os.FileMode) error", + "parent": null, + "doc": null + } + ], + "Remove": [ + { + "name": "Remove", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 47, + "column": 0, + "signature": "func (f *osFileSystem) Remove(name string) error", + "parent": null, + "doc": null + }, + { + "name": "Remove", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 65, + "column": 0, + "signature": "func (s *spyFileSystem) Remove(name string) error", + "parent": null, + "doc": null + } + ], + "Rename": [ + { + "name": "Rename", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 51, + "column": 0, + "signature": "func (f *osFileSystem) Rename(oldpath, newpath string) error", + "parent": null, + "doc": null + }, + { + "name": "Rename", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 69, + "column": 0, + "signature": "func (s *spyFileSystem) Rename(oldpath, newpath string) error", + "parent": null, + "doc": null + } + ], + "MkdirAll": [ + { + "name": "MkdirAll", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 55, + "column": 0, + "signature": "func (f *osFileSystem) MkdirAll(path string, perm os.FileMode) error", + "parent": null, + "doc": null + }, + { + "name": "MkdirAll", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 96, + "column": 0, + "signature": "func (s *spyFileSystem) MkdirAll(path string, perm os.FileMode) error", + "parent": null, + "doc": null + } + ], + "Stat": [ + { + "name": "Stat", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 59, + "column": 0, + "signature": "func (f *osFileSystem) Stat(name string) (os.FileInfo, error)", + "parent": null, + "doc": null + }, + { + "name": "Stat", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 100, + "column": 0, + "signature": "func (s *spyFileSystem) Stat(name string) (os.FileInfo, error)", + "parent": null, + "doc": null + } + ], + "Glob": [ + { + "name": "Glob", + "type": "method", + "file": "internal/storage/filesystem.go", + "line": 63, + "column": 0, + "signature": "func (f *osFileSystem) Glob(pattern string) ([]string, error)", + "parent": null, + "doc": null + }, + { + "name": "Glob", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 104, + "column": 0, + "signature": "func (s *spyFileSystem) Glob(pattern string) ([]string, error)", + "parent": null, + "doc": null + } + ], + "FileSystem": [ + { + "name": "FileSystem", + "type": "interface", + "file": "internal/storage/filesystem.go", + "line": 9, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "osFileSystem": [ + { + "name": "osFileSystem", + "type": "struct", + "file": "internal/storage/filesystem.go", + "line": 26, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewSpyFileSystem": [ + { + "name": "NewSpyFileSystem", + "type": "function", + "file": "internal/storage/filesystem_spy.go", + "line": 31, + "column": 0, + "signature": "func NewSpyFileSystem() *spyFileSystem", + "parent": null, + "doc": null + } + ], + "ResetRenameCount": [ + { + "name": "ResetRenameCount", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 109, + "column": 0, + "signature": "func (s *spyFileSystem) ResetRenameCount()", + "parent": null, + "doc": null + } + ], + "GetRenameCallCount": [ + { + "name": "GetRenameCallCount", + "type": "method", + "file": "internal/storage/filesystem_spy.go", + "line": 114, + "column": 0, + "signature": "func (s *spyFileSystem) GetRenameCallCount() int", + "parent": null, + "doc": null + } + ], + "spyFileSystem": [ + { + "name": "spyFileSystem", + "type": "struct", + "file": "internal/storage/filesystem_spy.go", + "line": 10, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "NewStorageService": [ + { + "name": "NewStorageService", + "type": "function", + "file": "internal/storage/storage.go", + "line": 54, + "column": 0, + "signature": "func NewStorageService(cryptoService *crypto.CryptoService, vaultPath string) (*StorageService, error)", + "parent": null, + "doc": null + } + ], + "NewStorageServiceWithFS": [ + { + "name": "NewStorageServiceWithFS", + "type": "function", + "file": "internal/storage/storage.go", + "line": 59, + "column": 0, + "signature": "func NewStorageServiceWithFS(cryptoService *crypto.CryptoService, vaultPath string, fs FileSystem) (*StorageService, error)", + "parent": null, + "doc": null + } + ], + "InitializeVault": [ + { + "name": "InitializeVault", + "type": "method", + "file": "internal/storage/storage.go", + "line": 85, + "column": 0, + "signature": "func (s *StorageService) InitializeVault(password string) error", + "parent": null, + "doc": null + } + ], + "LoadVault": [ + { + "name": "LoadVault", + "type": "method", + "file": "internal/storage/storage.go", + "line": 118, + "column": 0, + "signature": "func (s *StorageService) LoadVault(password string) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "LoadVaultWithKey": [ + { + "name": "LoadVaultWithKey", + "type": "method", + "file": "internal/storage/storage.go", + "line": 144, + "column": 0, + "signature": "func (s *StorageService) LoadVaultWithKey(key []byte) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "SaveVault": [ + { + "name": "SaveVault", + "type": "method", + "file": "internal/storage/storage.go", + "line": 159, + "column": 0, + "signature": "func (s *StorageService) SaveVault(data []byte, password string, callback ProgressCallback) error", + "parent": null, + "doc": null + } + ], + "prepareEncryptedData": [ + { + "name": "prepareEncryptedData", + "type": "method", + "file": "internal/storage/storage.go", + "line": 257, + "column": 0, + "signature": "func (s *StorageService) prepareEncryptedData(data []byte, metadata VaultMetadata, password string) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "SaveVaultWithIterations": [ + { + "name": "SaveVaultWithIterations", + "type": "method", + "file": "internal/storage/storage.go", + "line": 288, + "column": 0, + "signature": "func (s *StorageService) SaveVaultWithIterations(data []byte, password string, iterations int) error", + "parent": null, + "doc": null + } + ], + "SaveVaultWithIterationsUnsafe": [ + { + "name": "SaveVaultWithIterationsUnsafe", + "type": "method", + "file": "internal/storage/storage.go", + "line": 329, + "column": 0, + "signature": "func (s *StorageService) SaveVaultWithIterationsUnsafe(data []byte, password string, iterations int) error", + "parent": null, + "doc": null + } + ], + "SetIterations": [ + { + "name": "SetIterations", + "type": "method", + "file": "internal/storage/storage.go", + "line": 371, + "column": 0, + "signature": "func (s *StorageService) SetIterations(iterations int) error", + "parent": null, + "doc": null + } + ], + "VaultExists": [ + { + "name": "VaultExists", + "type": "method", + "file": "internal/storage/storage.go", + "line": 388, + "column": 0, + "signature": "func (s *StorageService) VaultExists() bool", + "parent": null, + "doc": null + } + ], + "GetVaultInfo": [ + { + "name": "GetVaultInfo", + "type": "method", + "file": "internal/storage/storage.go", + "line": 393, + "column": 0, + "signature": "func (s *StorageService) GetVaultInfo() (*VaultMetadata, error)", + "parent": null, + "doc": null + } + ], + "ValidateVault": [ + { + "name": "ValidateVault", + "type": "method", + "file": "internal/storage/storage.go", + "line": 410, + "column": 0, + "signature": "func (s *StorageService) ValidateVault() error", + "parent": null, + "doc": null + } + ], + "CreateBackup": [ + { + "name": "CreateBackup", + "type": "method", + "file": "internal/storage/storage.go", + "line": 446, + "column": 0, + "signature": "func (s *StorageService) CreateBackup() error", + "parent": null, + "doc": null + } + ], + "RestoreFromBackup": [ + { + "name": "RestoreFromBackup", + "type": "method", + "file": "internal/storage/storage.go", + "line": 453, + "column": 0, + "signature": "func (s *StorageService) RestoreFromBackup(backupPath string) error", + "parent": null, + "doc": null + } + ], + "RemoveBackup": [ + { + "name": "RemoveBackup", + "type": "method", + "file": "internal/storage/storage.go", + "line": 476, + "column": 0, + "signature": "func (s *StorageService) RemoveBackup() error", + "parent": null, + "doc": null + } + ], + "loadEncryptedVault": [ + { + "name": "loadEncryptedVault", + "type": "method", + "file": "internal/storage/storage.go", + "line": 487, + "column": 0, + "signature": "func (s *StorageService) loadEncryptedVault() (*EncryptedVault, error)", + "parent": null, + "doc": null + } + ], + "saveEncryptedVault": [ + { + "name": "saveEncryptedVault", + "type": "method", + "file": "internal/storage/storage.go", + "line": 510, + "column": 0, + "signature": "func (s *StorageService) saveEncryptedVault(data []byte, metadata VaultMetadata, password string) error", + "parent": null, + "doc": null + } + ], + "atomicWrite": [ + { + "name": "atomicWrite", + "type": "method", + "file": "internal/storage/storage.go", + "line": 540, + "column": 0, + "signature": "func (s *StorageService) atomicWrite(path string, data []byte) error", + "parent": null, + "doc": null + } + ], + "preflightChecks": [ + { + "name": "preflightChecks", + "type": "method", + "file": "internal/storage/storage.go", + "line": 593, + "column": 0, + "signature": "func (s *StorageService) preflightChecks() error", + "parent": null, + "doc": null + } + ], + "getAvailableDiskSpace": [ + { + "name": "getAvailableDiskSpace", + "type": "method", + "file": "internal/storage/storage.go", + "line": 629, + "column": 0, + "signature": "func (s *StorageService) getAvailableDiskSpace(path string) (int64, error)", + "parent": null, + "doc": null + } + ], + "createBackup": [ + { + "name": "createBackup", + "type": "method", + "file": "internal/storage/storage.go", + "line": 643, + "column": 0, + "signature": "func (s *StorageService) createBackup() error", + "parent": null, + "doc": null + } + ], + "restoreFromBackup": [ + { + "name": "restoreFromBackup", + "type": "method", + "file": "internal/storage/storage.go", + "line": 675, + "column": 0, + "signature": "func (s *StorageService) restoreFromBackup(backupPath string) error", + "parent": null, + "doc": null + } + ], + "ProgressCallback": [ + { + "name": "ProgressCallback", + "type": "type", + "file": "internal/storage/storage.go", + "line": 33, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "VaultMetadata": [ + { + "name": "VaultMetadata", + "type": "struct", + "file": "internal/storage/storage.go", + "line": 35, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "EncryptedVault": [ + { + "name": "EncryptedVault", + "type": "struct", + "file": "internal/storage/storage.go", + "line": 43, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "StorageService": [ + { + "name": "StorageService", + "type": "struct", + "file": "internal/storage/storage.go", + "line": 48, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "DetectFirstRun": [ + { + "name": "DetectFirstRun", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 57, + "column": 0, + "signature": "func DetectFirstRun(commandName string, vaultFlag string) FirstRunState", + "parent": null, + "doc": null + } + ], + "commandRequiresVault": [ + { + "name": "commandRequiresVault", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 90, + "column": 0, + "signature": "func commandRequiresVault(commandName string) bool", + "parent": null, + "doc": null + } + ], + "RunGuidedInit": [ + { + "name": "RunGuidedInit", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 108, + "column": 0, + "signature": "func RunGuidedInit(vaultPath string, isTTY bool) error", + "parent": null, + "doc": null + } + ], + "RunGuidedInitWithInput": [ + { + "name": "RunGuidedInitWithInput", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 158, + "column": 0, + "signature": "func RunGuidedInitWithInput(vaultPath string, isTTY bool, input string) error", + "parent": null, + "doc": null + } + ], + "promptMasterPassword": [ + { + "name": "promptMasterPassword", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 199, + "column": 0, + "signature": "func promptMasterPassword(reader *bufio.Reader) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "promptMasterPasswordWithReader": [ + { + "name": "promptMasterPasswordWithReader", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 203, + "column": 0, + "signature": "func promptMasterPasswordWithReader(reader *bufio.Reader, maxAttempts int) ([]byte, error)", + "parent": null, + "doc": null + } + ], + "validatePasswordPolicy": [ + { + "name": "validatePasswordPolicy", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 275, + "column": 0, + "signature": "func validatePasswordPolicy(password []byte) error", + "parent": null, + "doc": null + } + ], + "promptKeychainOption": [ + { + "name": "promptKeychainOption", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 318, + "column": 0, + "signature": "func promptKeychainOption(reader *bufio.Reader) bool", + "parent": null, + "doc": null + } + ], + "promptAuditOption": [ + { + "name": "promptAuditOption", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 331, + "column": 0, + "signature": "func promptAuditOption(reader *bufio.Reader) bool", + "parent": null, + "doc": null + } + ], + "showNonTTYError": [ + { + "name": "showNonTTYError", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 345, + "column": 0, + "signature": "func showNonTTYError() error", + "parent": null, + "doc": null + } + ], + "showManualInitInstructions": [ + { + "name": "showManualInitInstructions", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 355, + "column": 0, + "signature": "func showManualInitInstructions() error", + "parent": null, + "doc": null + } + ], + "showSuccessMessage": [ + { + "name": "showSuccessMessage", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 363, + "column": 0, + "signature": "func showSuccessMessage(keychainEnabled, auditEnabled bool)", + "parent": null, + "doc": null + } + ], + "createVaultFromConfig": [ + { + "name": "createVaultFromConfig", + "type": "function", + "file": "internal/vault/firstrun.go", + "line": 378, + "column": 0, + "signature": "func createVaultFromConfig(config GuidedInitConfig) error", + "parent": null, + "doc": null + } + ], + "FirstRunState": [ + { + "name": "FirstRunState", + "type": "struct", + "file": "internal/vault/firstrun.go", + "line": 25, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "GuidedInitConfig": [ + { + "name": "GuidedInitConfig", + "type": "struct", + "file": "internal/vault/firstrun.go", + "line": 36, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "MetadataPath": [ + { + "name": "MetadataPath", + "type": "function", + "file": "internal/vault/metadata.go", + "line": 44, + "column": 0, + "signature": "func MetadataPath(vaultPath string) string", + "parent": null, + "doc": null + } + ], + "LoadMetadata": [ + { + "name": "LoadMetadata", + "type": "function", + "file": "internal/vault/metadata.go", + "line": 49, + "column": 0, + "signature": "func LoadMetadata(vaultPath string) (*Metadata, error)", + "parent": null, + "doc": null + }, + { + "name": "LoadMetadata", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1336, + "column": 0, + "signature": "func (v *VaultService) LoadMetadata() (*Metadata, error)", + "parent": null, + "doc": null + } + ], + "SaveMetadata": [ + { + "name": "SaveMetadata", + "type": "function", + "file": "internal/vault/metadata.go", + "line": 81, + "column": 0, + "signature": "func SaveMetadata(vaultPath string, metadata *Metadata) error", + "parent": null, + "doc": null + }, + { + "name": "SaveMetadata", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1341, + "column": 0, + "signature": "func (v *VaultService) SaveMetadata(metadata *Metadata) error", + "parent": null, + "doc": null + } + ], + "DeleteMetadata": [ + { + "name": "DeleteMetadata", + "type": "function", + "file": "internal/vault/metadata.go", + "line": 101, + "column": 0, + "signature": "func DeleteMetadata(vaultPath string) error", + "parent": null, + "doc": null + }, + { + "name": "DeleteMetadata", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1346, + "column": 0, + "signature": "func (v *VaultService) DeleteMetadata() error", + "parent": null, + "doc": null + } + ], + "Metadata": [ + { + "name": "Metadata", + "type": "struct", + "file": "internal/vault/metadata.go", + "line": 11, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "RecoveryMetadata": [ + { + "name": "RecoveryMetadata", + "type": "struct", + "file": "internal/vault/metadata.go", + "line": 21, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "KDFParams": [ + { + "name": "KDFParams", + "type": "struct", + "file": "internal/vault/metadata.go", + "line": 34, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "GetStorageService": [ + { + "name": "GetStorageService", + "type": "method", + "file": "internal/vault/vault.go", + "line": 179, + "column": 0, + "signature": "func (v *VaultService) GetStorageService() *storage.StorageService", + "parent": null, + "doc": null + } + ], + "EnableAudit": [ + { + "name": "EnableAudit", + "type": "method", + "file": "internal/vault/vault.go", + "line": 186, + "column": 0, + "signature": "func (v *VaultService) EnableAudit(auditLogPath, vaultID string) error", + "parent": null, + "doc": null + } + ], + "DisableAudit": [ + { + "name": "DisableAudit", + "type": "method", + "file": "internal/vault/vault.go", + "line": 231, + "column": 0, + "signature": "func (v *VaultService) DisableAudit()", + "parent": null, + "doc": null + } + ], + "LogAudit": [ + { + "name": "LogAudit", + "type": "method", + "file": "internal/vault/vault.go", + "line": 239, + "column": 0, + "signature": "func (v *VaultService) LogAudit(eventType, outcome, credentialName string)", + "parent": null, + "doc": null + } + ], + "createAuditCallback": [ + { + "name": "createAuditCallback", + "type": "method", + "file": "internal/vault/vault.go", + "line": 261, + "column": 0, + "signature": "func (v *VaultService) createAuditCallback() storage.ProgressCallback", + "parent": null, + "doc": null + } + ], + "Initialize": [ + { + "name": "Initialize", + "type": "method", + "file": "internal/vault/vault.go", + "line": 319, + "column": 0, + "signature": "func (v *VaultService) Initialize(masterPassword []byte, useKeychain bool, auditLogPath, vaultID string) error", + "parent": null, + "doc": null + } + ], + "Unlock": [ + { + "name": "Unlock", + "type": "method", + "file": "internal/vault/vault.go", + "line": 420, + "column": 0, + "signature": "func (v *VaultService) Unlock(masterPassword []byte) error", + "parent": null, + "doc": null + } + ], + "UnlockWithKey": [ + { + "name": "UnlockWithKey", + "type": "method", + "file": "internal/vault/vault.go", + "line": 553, + "column": 0, + "signature": "func (v *VaultService) UnlockWithKey(vaultKey []byte) error", + "parent": null, + "doc": null + } + ], + "UnlockWithKeychain": [ + { + "name": "UnlockWithKeychain", + "type": "method", + "file": "internal/vault/vault.go", + "line": 637, + "column": 0, + "signature": "func (v *VaultService) UnlockWithKeychain() error", + "parent": null, + "doc": null + } + ], + "Lock": [ + { + "name": "Lock", + "type": "method", + "file": "internal/vault/vault.go", + "line": 661, + "column": 0, + "signature": "func (v *VaultService) Lock()", + "parent": null, + "doc": null + } + ], + "IsUnlocked": [ + { + "name": "IsUnlocked", + "type": "method", + "file": "internal/vault/vault.go", + "line": 677, + "column": 0, + "signature": "func (v *VaultService) IsUnlocked() bool", + "parent": null, + "doc": null + } + ], + "save": [ + { + "name": "save", + "type": "method", + "file": "internal/vault/vault.go", + "line": 682, + "column": 0, + "signature": "func (v *VaultService) save() error", + "parent": null, + "doc": null + } + ], + "GetCredential": [ + { + "name": "GetCredential", + "type": "method", + "file": "internal/vault/vault.go", + "line": 760, + "column": 0, + "signature": "func (v *VaultService) GetCredential(service string, trackUsage bool) (*Credential, error)", + "parent": null, + "doc": null + } + ], + "getGitRepo": [ + { + "name": "getGitRepo", + "type": "method", + "file": "internal/vault/vault.go", + "line": 837, + "column": 0, + "signature": "func (v *VaultService) getGitRepo(dir string) string", + "parent": null, + "doc": null + } + ], + "ListCredentials": [ + { + "name": "ListCredentials", + "type": "method", + "file": "internal/vault/vault.go", + "line": 858, + "column": 0, + "signature": "func (v *VaultService) ListCredentials() ([]string, error)", + "parent": null, + "doc": null + } + ], + "ListCredentialsWithMetadata": [ + { + "name": "ListCredentialsWithMetadata", + "type": "method", + "file": "internal/vault/vault.go", + "line": 899, + "column": 0, + "signature": "func (v *VaultService) ListCredentialsWithMetadata() ([]CredentialMetadata, error)", + "parent": null, + "doc": null + } + ], + "UpdateCredentialFields": [ + { + "name": "UpdateCredentialFields", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1019, + "column": 0, + "signature": "func (v *VaultService) UpdateCredentialFields(service, username, password, category, url, notes string) error", + "parent": null, + "doc": null + } + ], + "GetUsageStats": [ + { + "name": "GetUsageStats", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1063, + "column": 0, + "signature": "func (v *VaultService) GetUsageStats(service string) (map[string]UsageRecord, error)", + "parent": null, + "doc": null + } + ], + "ChangePassword": [ + { + "name": "ChangePassword", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1085, + "column": 0, + "signature": "func (v *VaultService) ChangePassword(newPassword []byte) error", + "parent": null, + "doc": null + } + ], + "EnableKeychain": [ + { + "name": "EnableKeychain", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1163, + "column": 0, + "signature": "func (v *VaultService) EnableKeychain(password []byte, force bool) error", + "parent": null, + "doc": null + } + ], + "GetKeychainStatus": [ + { + "name": "GetKeychainStatus", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1210, + "column": 0, + "signature": "func (v *VaultService) GetKeychainStatus() *KeychainStatus", + "parent": null, + "doc": null + } + ], + "RemoveVault": [ + { + "name": "RemoveVault", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1242, + "column": 0, + "signature": "func (v *VaultService) RemoveVault(force bool, removeAll bool) (*RemoveVaultResult, error)", + "parent": null, + "doc": null + } + ], + "PingKeychain": [ + { + "name": "PingKeychain", + "type": "method", + "file": "internal/vault/vault.go", + "line": 1351, + "column": 0, + "signature": "func (v *VaultService) PingKeychain() error", + "parent": null, + "doc": null + } + ], + "KeychainStatus": [ + { + "name": "KeychainStatus", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 20, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "RemoveVaultResult": [ + { + "name": "RemoveVaultResult", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 27, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "UsageRecord": [ + { + "name": "UsageRecord", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 53, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "Credential": [ + { + "name": "Credential", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 64, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "VaultData": [ + { + "name": "VaultData", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 78, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "UpdateOpts": [ + { + "name": "UpdateOpts", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 874, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "CredentialMetadata": [ + { + "name": "CredentialMetadata", + "type": "struct", + "file": "internal/vault/vault.go", + "line": 883, + "column": 0, + "signature": null, + "parent": null, + "doc": null + } + ], + "main": [ + { + "name": "main", + "type": "function", + "file": "main.go", + "line": 11, + "column": 0, + "signature": "func main()", + "parent": null, + "doc": null + } + ] + } +} \ No newline at end of file From cc29ba9b2ccb5d6a7e5b1d0ea872187d6ae7a105 Mon Sep 17 00:00:00 2001 From: Ari Date: Fri, 28 Nov 2025 23:35:45 -0500 Subject: [PATCH 08/19] docs: refine doc-manager exclusions and regenerate baselines MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Exclusion Updates: - Added specs/* (development specifications) - Added .specify/* (Speckit framework files) - Added .spec-workflow/* (spec workflow data) Baseline Impact: - Files tracked reduced: 322 → 126 (excluded 196 spec files) - Symbol tracking unchanged: 591 symbols - Breakdown: 38 docs, 40 cmd, 30 internal, 9 root files This focuses documentation tracking on actual source code and documentation files, excluding internal development artifacts. Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager.yml | 3 + .doc-manager/dependencies.json | 2 +- .doc-manager/memory/repo-baseline.json | 204 +---------------------- .doc-manager/memory/symbol-baseline.json | 2 +- 4 files changed, 9 insertions(+), 202 deletions(-) diff --git a/.doc-manager.yml b/.doc-manager.yml index 01792cca..5b2319cd 100644 --- a/.doc-manager.yml +++ b/.doc-manager.yml @@ -4,6 +4,9 @@ exclude: - '*_test.go' - vendor/* - test/* +- specs/* +- .specify/* +- .spec-workflow/* sources: - cmd/**/*.go - internal/**/*.go diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json index 3f32cfe3..a8a84f9c 100644 --- a/.doc-manager/dependencies.json +++ b/.doc-manager/dependencies.json @@ -1,5 +1,5 @@ { - "generated_at": "2025-11-28T23:31:54.774328", + "generated_at": "2025-11-28T23:35:18.475441", "doc_to_code": { "01-getting-started/manual-install.md": [ "cmd/init.go", diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json index 4e16c4fb..01b5ed33 100644 --- a/.doc-manager/memory/repo-baseline.json +++ b/.doc-manager/memory/repo-baseline.json @@ -5,12 +5,12 @@ "docs_exist": true, "docs_path": "docs", "metadata": { - "git_commit": "e700033bb40bd35669f503ccf758921750e4d125", + "git_commit": "2c21b8c3a29029a9ac7ca5d1a424653538e42455", "git_branch": "docs/review-with-doc-manager" }, - "timestamp": "2025-11-28T23:31:53.613984", + "timestamp": "2025-11-28T23:35:17.502454", "version": "1.0.0", - "file_count": 322, + "file_count": 126, "files": { "CHANGELOG.md": "d72447f51be5bf54e38a8802bf7db155b85c877555e7e74f07e117b99b91c638", "CLAUDE.md": "2bcc51fedb86dc1c1b0b303dffade31cb68e8727403a94060d7631b5cb656116", @@ -137,202 +137,6 @@ "manifests/snap/README.md": "e395fff58a46147995b5e4aaf981f624b615b4dba8b3ccac3bb65fb582bb3d7d", "manifests/winget/pass-cli.yaml": "c4a88dcb7b345331bd742c5663692abe861237bef3c6903aeb16e7773837fe3a", "manifests/winget/README.md": "e8ef23efb46f2e5c5dad763e0ea17fd710ed38aeaeb2b7def28e7dd0fc45f37f", - "scoop/pass-cli.json": "35b1c6462993e009b89a98ff3303e44c663a89681c19592e1576ca8d3a7213ec", - "specs/archive/001-add-manual-vault/data-model.md": "e663af445c06e34ef55cafdcb4e0847764c52bac1a1aec4e057456517344bb91", - "specs/archive/001-add-manual-vault/plan.md": "125a0a73ad3e1609a7302aee04364d49f626a595d7c3229a800972872dc7d490", - "specs/archive/001-add-manual-vault/quickstart.md": "b5cdd1ac1c2de45ed3df2747ff03b57db9038cd1ddb7cb5d171794a6a5daf26d", - "specs/archive/001-add-manual-vault/research.md": "f60b7e93780f937123680bd6bd0bc9806be7fd63a5057f7d6e288acd896503fa", - "specs/archive/001-add-manual-vault/spec.md": "baf3a3402c1070f2585519f0d3cc806811ec748359870366c41a158a8d9050fd", - "specs/archive/001-add-manual-vault/tasks.md": "3ca42a5f4bde4603261639315d56bcaadc84c8fbe863a1c36732f46b28b88869", - "specs/archive/001-add-manual-vault/checklists/requirements.md": "85ab994ef29fae0d0083bd0b1dd34fa1edc7ee442904279b1c140241959991ad", - "specs/archive/001-add-manual-vault/contracts/backup-create.md": "e928793fb396f7adeec5075726e459994ec443f8fde89de83cb5a2fec5ed3db5", - "specs/archive/001-add-manual-vault/contracts/backup-info.md": "47b763b52a7d1785f9c0debc682a82b578eec1e45fe6b2e4724ea4fed216ff4a", - "specs/archive/001-add-manual-vault/contracts/backup-restore.md": "47418485bae535c22cfade20b532e3a96e1ee381cb2ae46d4067671409f57bcc", - "specs/archive/001-remove-vault-flag/COMPLETION_REPORT.md": "4c963fbe70aeb2eb9d1e8f74f74ac1efb8cd261ee42133a461488fd7c4480927", - "specs/archive/001-remove-vault-flag/data-model.md": "852c78408738673d164f8c7a48e857fb10bfff88a180f7aec079bca96a85016f", - "specs/archive/001-remove-vault-flag/plan.md": "bb01dc875519003666cdbbb76ef6deecdaf8e13afec6731dbe0aca3c248d8bb3", - "specs/archive/001-remove-vault-flag/quickstart.md": "76a96c2a731fa9a7cba916a762dbd1d28c1d98105c3e79b52ec3008d686e6237", - "specs/archive/001-remove-vault-flag/research.md": "6b789837898e4b3fc1d1fa9e166da14eb37712e22e9bf870eab36849521d7a84", - "specs/archive/001-remove-vault-flag/REVIEW-FINDINGS.md": "747a7ab88c685ff5429b271d71837bb48a33a7bc6bfd4560c6f57666df890a8e", - "specs/archive/001-remove-vault-flag/spec.md": "37230a98d9d9dfadd8fe1ba62dcdbe2308deafb33a2ef000cf1d28f27eadc674", - "specs/archive/001-remove-vault-flag/tasks.md": "ec78a73420747331b74841b6cdfaa521d6425637b64a5cb531b1c7f5055a58e0", - "specs/archive/001-remove-vault-flag/checklists/requirements.md": "63db9bf23a5ee51e380d1e140928a8466fc49c8ad45e894d754430d2afac3a47", - "specs/archive/001-remove-vault-flag/contracts/config-schema.yml": "715cfc569b16c879dcdfe6e80aae5cd8e1ac11b9999b113ede91bdaec6ed5027", - "specs/archive/001-reorganize-cmd-tui/plan.md": "5858b239ad711b8eda05a9a84b356a03faa8a1fe3d735912ad342ca43cc762fa", - "specs/archive/001-reorganize-cmd-tui/quickstart.md": "92ca7d338dfbf20d195d3818188ee6d302203c5a592cb57b0665cbaffa40a077", - "specs/archive/001-reorganize-cmd-tui/spec.md": "026879d1383b5d95a3ef5332146c656858bbd72a9eac5d485cbc9d5ca2a66cd4", - "specs/archive/001-reorganize-cmd-tui/tasks.md": "0bc12e8f84098f2664a9740fee5c724b92ea96b65c50dfe7e649c1c696bfb9c9", - "specs/archive/001-reorganize-cmd-tui/checklists/migration-safety.md": "f04935aec9860e70ebf58a5bfa54312b3ac46a6d655afcd68fff4f7514191ae9", - "specs/archive/001-reorganize-cmd-tui/checklists/requirements.md": "4569dc3a5363068712df776ab2a47837fb6703ceb6f8b6379c499159b7514b24", - "specs/archive/002-comprehensive-documentation-restructuring/data-model.md": "262177e2e175ac1af596630788161c65e9119eeda39cac39296d105e1c92c161", - "specs/archive/002-comprehensive-documentation-restructuring/plan.md": "5522512ba4ce2cf0eeba3a9338ea41f99010721765933670481eeabd904c8513", - "specs/archive/002-comprehensive-documentation-restructuring/quickstart.md": "c84eb6967b65adcb7bc2d1ac3fab82c0bef4d6c1013069297ee284174ee9cb6f", - "specs/archive/002-comprehensive-documentation-restructuring/research.md": "f122a9846c10819cecc86ca47751f5316c3d01bff6c6fb9571e7e1b0d4eff2c4", - "specs/archive/002-comprehensive-documentation-restructuring/spec.md": "b72bb64dc75bf61c3bff03aada4e35bb9d9516ef96fe913af185b596990869aa", - "specs/archive/002-comprehensive-documentation-restructuring/tasks.md": "484a03834364ec6cbfbf21c7971b6a92c46a00af6033fcf20b2db6701ca769f8", - "specs/archive/002-comprehensive-documentation-restructuring/checklists/requirements.md": "c854bd4455fdb3ee0917232294291e7907a9fe516f912088e0f97911fe56040f", - "specs/archive/002-fix-untested-features/data-model.md": "069583fb7032d126ff5e2d812a67fcaaae998325c449a3b5862e24f55620cb71", - "specs/archive/002-fix-untested-features/design-improvements-post-spec.md": "68f8b9cd6ce505011ce0db405e2dbbc6f7c2aa4dcc0d60a884869790a3047d8a", - "specs/archive/002-fix-untested-features/plan.md": "99423f57c86f06551fa9ceb42901e8dada520734f46a6cf65302adc5d455f9ba", - "specs/archive/002-fix-untested-features/quickstart.md": "6b228cbd40c40b4f4cd33a302b790ee7625124987d4945668dc1040ee9d9f91f", - "specs/archive/002-fix-untested-features/research.md": "ad59cefdb4cd0d34df9251b4e1b5f660be8f41b02dbc2765afdec4349eeb76f0", - "specs/archive/002-fix-untested-features/spec.md": "a1ad70bbc3922e5f5ec9aa93754e9125d57bcee28e22a18468a5501fd468ecf7", - "specs/archive/002-fix-untested-features/tasks.md": "fb9fdb34eebe661fc4cf1bd302aeb5d38e9873f2291af095a4ad352ac33a5409", - "specs/archive/002-fix-untested-features/checklists/requirements.md": "ac94492cc31a31cc1bda63c6f89b81eb3030ee4168ad24d83f769da47255d04b", - "specs/archive/002-fix-untested-features/contracts/keychain-enable.md": "348fe1a8fbe428ef6f6967e5493008c6e665f27651a39043caf198a97321c02f", - "specs/archive/002-fix-untested-features/contracts/keychain-status.md": "e719155a6e05d64e077ea661d716e51f4e245207df82a374e575ea8fce2f1c73", - "specs/archive/002-fix-untested-features/contracts/vault-remove.md": "f808b94e94526aba52bcec5148d0f4753387ba25b61c3e86d9c60e873d385e9d", - "specs/archive/002-hey-i-d/data-model.md": "cf237510ac9cab6ad22c074d54a0a2463df60f1ede44da7740b569762282a2a8", - "specs/archive/002-hey-i-d/plan.md": "0e660b20fab7620e431bd9a6b24eb2ef5770fb574c5298f381ee6d12cdfa847f", - "specs/archive/002-hey-i-d/quickstart.md": "981710f8da7261d6bfe45c86d9bdb939f55f473c3e589ffbae7ba4762b22043d", - "specs/archive/002-hey-i-d/research.md": "374b812a49a3372a0928b274bad0de97bacd556ee4d267a519fcdf9c0d7cbd01", - "specs/archive/002-hey-i-d/spec.md": "3da2551c83ec24938e0a59cab3e9563b066fd1fa6a7915e27bf7e5a45226e985", - "specs/archive/002-hey-i-d/tasks.md": "cb0052b478605b8582a80f0629b7d0e43106dd1c02dca74a923accaf2121ba39", - "specs/archive/002-hey-i-d/checklists/requirements.md": "d93b7ca4ee23dbb3a05f3627ac1c3a63b10a1134e984815f8d17fe05b4cb2886", - "specs/archive/003-bip39-mnemonic-based/data-model.md": "2ddcd80a0fdd46ddef9d733714389339e3efd94c59a7db2747da5af0e959b128", - "specs/archive/003-bip39-mnemonic-based/final-validation.md": "60df06702ba2e66e26b3e86fe67fdd37307056c5d03dddf26f37daaf54882446", - "specs/archive/003-bip39-mnemonic-based/plan.md": "2c524124ae3db71d258b8b772a1704c69da65a2c3f731ddf26d769580ea8f1e0", - "specs/archive/003-bip39-mnemonic-based/quickstart-validation.md": "0da5058c8f0eb9d7442ca88b945c17ebb8fd6f52eb07cf99bba447a764c4c7d4", - "specs/archive/003-bip39-mnemonic-based/quickstart.md": "4ab1e93777f9e7e1fd110921f7485d358ad88485f174a9a3e1923f28ed33a4af", - "specs/archive/003-bip39-mnemonic-based/research.md": "8604676b093b85abf3b94905d62476221b6ad610d107612b81f75673c77acca9", - "specs/archive/003-bip39-mnemonic-based/spec.md": "0eb0d5f289c0b5f1b3580c54988e96306e5cd50d29539ad0b50ff8d83ad4bf58", - "specs/archive/003-bip39-mnemonic-based/tasks.md": "fb6455b5abd58095a075c88f1ea07501be5d0d517f54ccc2673e783908c7986b", - "specs/archive/003-bip39-mnemonic-based/checklists/requirements.md": "f47340370cee2f4d10be732c626eff39f16e575e6d4208db5a668dd2789b6268", - "specs/archive/003-bip39-mnemonic-based/contracts/recovery-api.md": "83203d5593bb86b2c364ba318bc8ef1438290b4a305c38b51b3cf8745eb18ecb", - "specs/archive/003-implement-atomic-save/data-model.md": "07e7e7ad6ae93d0caf504ab047c8c98ad0e07673255b3a2077894a638d3aa159", - "specs/archive/003-implement-atomic-save/plan.md": "d9a583e5f8f5e95f42ded515b80b10797407087b8f3171736f2175f80a4a01b6", - "specs/archive/003-implement-atomic-save/quickstart.md": "3868ce7b107f4321ddcdbeba9e1bc1ffc9c1fe1afca5eee9036106d559b3455f", - "specs/archive/003-implement-atomic-save/research.md": "19c0c6a6842a3e37234608ec6d477d814abb7ffd1f6bef2a97f218b3f71a9764", - "specs/archive/003-implement-atomic-save/spec.md": "20f5cf017e13d3bc7a17d4287e2e97643f66d0c6ae21508cd6bc755929f113dc", - "specs/archive/003-implement-atomic-save/tasks.md": "b8f8719e3951f088b5a5d2cf2c93080dbe5cebe8d386228f01c4629f57c27915", - "specs/archive/003-implement-atomic-save/checklists/requirements.md": "db1ecccf06ab0952862d250b678fadef353d210f6f4b1269073a946d4f64d238", - "specs/archive/003-implement-atomic-save/contracts/storage-save.md": "58bb32b71bffeaaa628684293459f8cebfd58bb69aa11ef99dfac892bd059ed9", - "specs/archive/003-would-it-be/plan.md": "c461bd531ea3a01975e162e62ee15628ceceddb8f4e80b58825c1817af7f5a8c", - "specs/archive/003-would-it-be/quickstart.md": "f63292b34de55ce6af7aa2559ceea7d0984d76c2e7d27548e3af29dc02ff08af", - "specs/archive/003-would-it-be/research.md": "f38288af0ae3c418486b759b3c15f35f419390fc28cd509cf56b944029c66120", - "specs/archive/003-would-it-be/spec.md": "b8878867d47909f0f7e9e97a6e6517423a2e4368ae8e22ad4d59bee350dcaa14", - "specs/archive/003-would-it-be/tasks.md": "0df95aa365d128b83292df904ab5884370586e6cbda5b4e5b0a06833287636a1", - "specs/archive/003-would-it-be/checklists/requirements.md": "4f082475951eb4c3c22addfb6c291fac37a2bc669f376d2cc74c72789cf97353", - "specs/archive/004-we-ve-recently/data-model.md": "6503b739589b7dd8c75ba642ef7d6e20ef1642307095b1b8c069a1e432799923", - "specs/archive/004-we-ve-recently/plan.md": "d0c5de244bc0ab235a0f3850b8ddaae1d1de5da9b4ffdec5f338843a34477478", - "specs/archive/004-we-ve-recently/quickstart.md": "634ba11d00be560b933213cc405883d082f832b2dee82b6a1bea860a71ab5239", - "specs/archive/004-we-ve-recently/research.md": "5cb1c1e3e81e8c9f32f40c39e087715dda7f7f36196148740b4a9dbd74bade9c", - "specs/archive/004-we-ve-recently/spec.md": "2fd2f5075b70f463d6e19af569897f10bc8bbb78d8c881feea83107c756bb8cf", - "specs/archive/004-we-ve-recently/tasks.md": "48942618204539eedccee78fc0478066241ea73353de2345ca5ebf15df3f52b9", - "specs/archive/004-we-ve-recently/checklists/requirements.md": "2c5cd6b9d441e8fc14fb2a6d0261a4b071e81f8e2c170b85d3dbfdec4341b664", - "specs/archive/004-we-ve-recently/contracts/tui-usage-section.md": "c90048389a98cea14f7686c842ec03c44e1c155a67715314899a7240324ab500", - "specs/archive/005-security-hardening-address/data-model.md": "daa06fc69e4fd01bb7f73f5cc5d7276eb27007375b8cd16701849e53d6f069b0", - "specs/archive/005-security-hardening-address/plan.md": "2d003dd5c25eaf3432d79c4fa90a6cccedbabf81919b4e7559835310e8ab1906", - "specs/archive/005-security-hardening-address/quickstart.md": "1539202a8c8177a7cc8ba696bef11c1674bf0a602f86db3f29bd7d0ebe8ccfd9", - "specs/archive/005-security-hardening-address/research.md": "21f8e3c930a58a9368f8ba8c1f794baa279132cbb3d8d8fcd83dd5b76d92861d", - "specs/archive/005-security-hardening-address/spec.md": "352d750774c3a6bd7306979ed59f718bb404914d60eb0c0a6948f728fa3457fa", - "specs/archive/005-security-hardening-address/tasks.md": "e80ed8391beb64faea7382aee14355ed6fa2ac0a6588f6ff63d766a7588232ec", - "specs/archive/005-security-hardening-address/checklists/requirements.md": "8a3c972e32bb30adcce0278d25506ebb34302c1ebf73e174e3ca203178a97457", - "specs/archive/006-implement-minimum-terminal/plan.md": "3d71b3d2da2d70492c26f22d0ebde64068c9720073ad6895b19859376a132986", - "specs/archive/006-implement-minimum-terminal/quickstart.md": "913a4c3977f2fa01003a7aa04f563c2226ed8cf922b28c4aa035120f992075ae", - "specs/archive/006-implement-minimum-terminal/research.md": "471088d59ef143d0c8ae1bd618b1365c38a62a9485ee5f6dbb84ac17025a4274", - "specs/archive/006-implement-minimum-terminal/spec.md": "e2f24e50e5743b75e42c046a6526370eb73d998cd36abc3e5ef12ecd9c837028", - "specs/archive/006-implement-minimum-terminal/tasks.md": "3d3ff40bfcb1c6854b65f5446a9665a339a2716ef9d3555c74ac6a1de4170867", - "specs/archive/006-implement-minimum-terminal/checklists/requirements.md": "55217e3e22c746786d0efbb988ceac4099651288188b0e2ce0324b01f6697c3b", - "specs/archive/007-user-wants-to/data-model.md": "beeb225c16287773fa0c7a56c7a9b065d876bf0cc1aeaf19ad0aff27b04acddb", - "specs/archive/007-user-wants-to/plan.md": "8184e5ffc3a94e07c13e0119d7087b7992c2c951d8f0fd37c83a364141c7a34f", - "specs/archive/007-user-wants-to/quickstart.md": "16937a0b5f1c9c278b9f73345f452bfd241f86fe327c9fcaa0359daaebd66e6f", - "specs/archive/007-user-wants-to/research.md": "61314e5761e8ef6318ceffdc63e42b5f87286294c33d49dd9115433a05fc0e13", - "specs/archive/007-user-wants-to/spec.md": "c0139cf7cfc9cc7f9dfa40fe669ddd475b79af71d15600fba1bb12b8a58a52e5", - "specs/archive/007-user-wants-to/tasks.md": "e5451504ab60e0b43d4b74d8b046a14433a075537bbcb823fc8e66322467486a", - "specs/archive/007-user-wants-to/checklists/integration-testing.md": "a8b1bf98aa0adbb2ba847792131f33bc80b2aada5b345a0820dcba8f08e8d9dc", - "specs/archive/007-user-wants-to/checklists/requirements.md": "f8c8bc53ba1e19a72cae47519d98940afcd1d621f0c6296530f7edad46ade533", - "specs/archive/007-user-wants-to/contracts/config-schema.md": "ed5593788f7f331f1f56f7722a6d7536fb357fbe492abea832db949cf0191129", - "specs/archive/007-user-wants-to/contracts/config-schema.yml": "c1c5c287df0bd9ded2228b8feec2d6dc11b2dc7e66a10c9bf94a46dfa5c20451", - "specs/archive/008-review-and-update/data-model.md": "1c675f9d76f361d3c7880fa5b7f97cbbe5ca72908f47e80cdb151f2dec03f384", - "specs/archive/008-review-and-update/plan.md": "675894252ae5dc31975e782445bbc61ccd4834d0c82eb8119ef751ad092bcd73", - "specs/archive/008-review-and-update/quickstart.md": "1a182277c0b6a4f4461882c60559d56e84916166ec86695dfbb882f10187dc5e", - "specs/archive/008-review-and-update/research.md": "5ee24a521c4f6d4d4a624451e58639f2f1ebf03f289aae5b8606a26bc7b3b8e5", - "specs/archive/008-review-and-update/spec.md": "9dac1077878d49976fa8f242cdcb0b1ee895e232fa084ca0f7e59a9d4857fb7c", - "specs/archive/008-review-and-update/tasks.md": "331c9255b0d0cd3099ff083cb5ea7c312ae3d16dddaabce5a41bbf1023b78adb", - "specs/archive/008-review-and-update/checklists/requirements.md": "7083e4b45b9d7e281de5202cfcbb44627aa7b388dbbeca07a31ce875b2af7743", - "specs/archive/008-review-and-update/contracts/documentation-validation-schema.md": "532d37d9cb20269f9ae08a8da4a3e77ad86542401e5b3ad20a8d675e98a6ef13", - "specs/archive/008-review-and-update/validation/command-tests.sh": "2586b0c158472d7caaa26b21429707a0b0015618334fe8eea8c62af9481d0b85", - "specs/archive/008-review-and-update/validation/cross-reference-check.sh": "eeeda0aefb73126008a90cc3161689dc16f0be6975fa83473a6b9c6e76126f8c", - "specs/archive/008-review-and-update/validation/link-check.sh": "0652367b0d38c93c12292a2f5a5d92018d3095a4f554833a9686c96e94a3cf49", - "specs/archive/008-review-and-update/validation/run-all-validation.sh": "133d8dc4d12af987057d136a711f501f43905f7d82815e9d48572ac3454566f0", - "specs/archive/008-review-and-update/validation/tracking.json": "550a43b384238e5e4f0d3bd5055c76fd71e0b3130a77d83cd72c3466507441d3", - "specs/archive/008-review-and-update/validation/version-audit.sh": "1e5568339e00b690cc008561b1f1bef69a3afdf6c2e49b7831c3f49992a98071", - "specs/archive/009-documentation-cleanup-and/audit-checklist.md": "bca75b0b9dcf0afac4865119d3c8825e2d99e19a4e0d0d1854d0424340e312b8", - "specs/archive/009-documentation-cleanup-and/plan.md": "536d932b93d2f69f2d7031f6ea9a77dc4f729cff1ddd8ca2f53389b4fd85a329", - "specs/archive/009-documentation-cleanup-and/policy-structure.md": "a431139b0f3277a39831cf814ca3feca033eced5ef865b7689f2ba0149685cad", - "specs/archive/009-documentation-cleanup-and/research.md": "fdeabe57535d9dee54559f2fb0bba648f3adab4b7a5f1dd288fc95192a64b4d1", - "specs/archive/009-documentation-cleanup-and/spec.md": "6d8a4f2fd94ff16a105a9187806eedfa10c0ad2c56ddd86105b0b41bac1371f5", - "specs/archive/009-documentation-cleanup-and/tasks.md": "fed11c53f257718025b1f45993fcb0e577cc8aff796d43c203251084c9cbf89e", - "specs/archive/009-documentation-cleanup-and/checklists/requirements.md": "d2f7086c9123d533f852bd551bb4c16b73f6121988347c479ebf500f95744f2b", - "specs/archive/010-documentation-accuracy-verification/audit-report.md": "62c31ec758e700def622c6bc512c5d24875c9d9712419afab36faefe12d3b930", - "specs/archive/010-documentation-accuracy-verification/migration-script-test-report.md": "da3b93f5170f0e81e579de5f237f751daf8852c613ea9e8ebb57a4295fc8c9c1", - "specs/archive/010-documentation-accuracy-verification/phase9-findings.md": "f02bef81dbbd6543fd10ac30894843a9214d9c2b29051c2578d8475fcc1ca761", - "specs/archive/010-documentation-accuracy-verification/plan.md": "ba76026ade27b1a6f516650b6cadf9d9c7c564bb9a6777be8661f01462cf3259", - "specs/archive/010-documentation-accuracy-verification/research.md": "05193c3ec5851bd78f15d638ec61eb9b57933304d2a7efc575c711b4481f2a4a", - "specs/archive/010-documentation-accuracy-verification/spec.md": "fda0f88cfa7000e6f24f3bd2092b479007b37be195fea14be937be42ef44d4ae", - "specs/archive/010-documentation-accuracy-verification/tasks.md": "2c0ce360442edfef04e271890f2d5978487c79a34a299d1b52a5e45277ebad35", - "specs/archive/010-documentation-accuracy-verification/verification-procedures.md": "e8247f69c2511b8c10609102bfd6c635db688a24f450d1ff038aad98f708a5ad", - "specs/archive/010-documentation-accuracy-verification/checklists/requirements.md": "70633a978723a03872279a1ef8a9705e9a9dab4e248b521d7098e11d73abad7e", - "specs/archive/010-documentation-accuracy-verification/examples/migration-bash.sh": "882cf3287f6e64ee6e2f78bb63aed391f444c08d322e28d9b5c1835712b3180a", - "specs/archive/010-documentation-accuracy-verification/examples/readme-bash.sh": "b8ed1abecc98e11fe53b11d324133daa452651bb903af35b1af09c53f25262e8", - "specs/archive/010-documentation-accuracy-verification/examples/usage-bash.sh": "5b82c9c8e75c93b7021ab67fe8ad873b5677ca441c9970bfdd56826ba28c01f0", - "specs/archive/010-documentation-accuracy-verification/examples/usage-powershell.ps1": "dfc5ef7987d5af4cc44559acf9919853f7ab15f8db84c1b63d1407d8a5feacb8", - "specs/archive/010-documentation-accuracy-verification/help-output/add.txt": "e30d2019925568bc2914f0bf0157083ba9d979fa24d9f58a3e2d91dd3e0f0909", - "specs/archive/010-documentation-accuracy-verification/help-output/change-password.txt": "ccde93249bcc8b96e8d95cb79293a59c72824f0f484a8d7cbefa4dde5cfe84a7", - "specs/archive/010-documentation-accuracy-verification/help-output/config-edit.txt": "52921f0e7bf2a69cb23cc5c006b40d55b0491e5986710d23c2f33c234a4acb72", - "specs/archive/010-documentation-accuracy-verification/help-output/config-init.txt": "e83a3e7a159505247ba50d3425c095e7b457e229b43119da0cf5a0add0ae2857", - "specs/archive/010-documentation-accuracy-verification/help-output/config-reset.txt": "80c007b1ebf387ec54f2357b1bdcf3bc330639fc95c5b0325b30d1c0320c9798", - "specs/archive/010-documentation-accuracy-verification/help-output/config-validate.txt": "1e0d6cce38c6a5973771b36c3a14f44f1caaa1014917cc00a140526e83b73281", - "specs/archive/010-documentation-accuracy-verification/help-output/config.txt": "b13a8e83c339103eed6f5b521d0c6e0c519e5d40406bce9ee3acb238589b14c0", - "specs/archive/010-documentation-accuracy-verification/help-output/delete.txt": "af8ec41b9f742a185b9556a87cb114104b5f836487da5bb215722baa9b7278b6", - "specs/archive/010-documentation-accuracy-verification/help-output/generate.txt": "9954d6b774cb1c9c2e2cbc7e0651ca1f547dab70962875daa3e306dd0e6dc36d", - "specs/archive/010-documentation-accuracy-verification/help-output/get.txt": "16317167943e549aff5342e4f8f8a165b7f336ecf3a6857193bef7c87ce85e69", - "specs/archive/010-documentation-accuracy-verification/help-output/init.txt": "baea8be8c79feeb36fce5ac5ad1c84a4cb0a244f6af49dbe55ab50aa0f42ca74", - "specs/archive/010-documentation-accuracy-verification/help-output/list.txt": "40a95f04df54307c0f14f47fbdfa8dbab67a56942861ccae73b600d1b8b1e545", - "specs/archive/010-documentation-accuracy-verification/help-output/tui.txt": "a6bb8649bbac0c2866f2477e631d27e2a677d039741fcfb73b90dbebde7be614", - "specs/archive/010-documentation-accuracy-verification/help-output/update.txt": "8a6f58cac4a36e0c51a37c6947dd01e7cf40ad5abc1fd3687e2789aaffbc45c7", - "specs/archive/010-documentation-accuracy-verification/help-output/verify-audit.txt": "f4fbbd5684f873b454182608d31824fb442aaa336afe01753297b7de49e3d212", - "specs/archive/010-documentation-accuracy-verification/help-output/version.txt": "6a18ea7b85e4fb8f8a6c0141f00dee2d2d993340da92ae59ac742a848e6e4424", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/manual_tui_test.md": "88c61d58c1a178a492311aeccd42881189c0a4afcf6c4dcd1b8b1c053d3c271e", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui.exp": "bdadb8c3892e22a2f223f63fc13bc0985aa4081c0fc6615612efb807367a097b", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_comprehensive.ps1": "422906835ee81d897481b992545272e83e9cbd0dc5bfddbfc76939e39d07c9be", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/test_tui_simple.sh": "d073a6edc78d70b6a5eb23d664ca64310acf03cd7d7119b3e1fc0a9a00b8d526", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_analysis.md": "01348fab2aa1ce4d8bbf65fe3dd523da21abfba6c1e41aa60d871b55f787c2d7", - "specs/archive/010-documentation-accuracy-verification/phase-6-tui-testing/tui_test_report.md": "dcaf42e4472f1270ac6e80b601c3ca0ee0687ee75b04fb1b16f603756883251d", - "specs/archive/011-doctor-command-for/data-model.md": "d3556e4d3f665df7285b7a63cae0d01b9616cd695b0253e5ef01e5d8b3bda7ba", - "specs/archive/011-doctor-command-for/plan.md": "50c777251120d3844083547b34eecd4cce35ffeffef5430083a972276b455416", - "specs/archive/011-doctor-command-for/quickstart.md": "d487f6fb48394ce3cbb092605ec232ab4062d1e6e190ab87819c7acfa898d974", - "specs/archive/011-doctor-command-for/research.md": "9499aa2e0cf3b97c1565f26ec4b8a0afdba19d709a6f2d19fa9ca2d6378c0c73", - "specs/archive/011-doctor-command-for/spec.md": "7d28992d8bb187fdfef0c734f7149dcdc79ec2f1147a6f0b131eeb611bf23809", - "specs/archive/011-doctor-command-for/tasks.md": "7b68f15a9e552193df455581cf52f634435351d915828c1f741b5eecb5b12cec", - "specs/archive/011-doctor-command-for/checklists/requirements.md": "766c45ea904c928a9962db1bdc2a38da742533f89daecc827d5d3076ddaf2f27", - "specs/archive/011-doctor-command-for/contracts/doctor-command.md": "d99e08a7822b85a6ec4cea8533dde91112ebd6c973418ff000aa66b78027f3eb", - "specs/archive/011-doctor-command-for/contracts/first-run-detection.md": "958ce1ec2facca6e237edda50f00f68c1703557f4902d2eaf0306be401513a78", - "specs/archive/011-enhanced-usage-tracking/data-model.md": "0a17f7ff2d02ffc5c88058acebf23f510835ba24736ca8b2aaa34c0457daacb9", - "specs/archive/011-enhanced-usage-tracking/plan.md": "ef36f1782975e4c762a08284592d26bb403013c0ff770a18163478aa0618af04", - "specs/archive/011-enhanced-usage-tracking/quickstart.md": "495f2def63896d4d6f794b80b8ad679606324b22723425144b90297ccd177324", - "specs/archive/011-enhanced-usage-tracking/research.md": "f695d050a644d043aee491748fffd484c78410af476d3312bafc154a3593304b", - "specs/archive/011-enhanced-usage-tracking/spec.md": "263cb6ad2bc1e287813aca8eada7c4f5c34365c1d11c87b05bfac2bd0d30f8ad", - "specs/archive/011-enhanced-usage-tracking/tasks.md": "67250729cb876f30539e64157b6ff3b1bc52ebe355a701646b22608bb8a352e8", - "specs/archive/011-enhanced-usage-tracking/checklists/requirements.md": "d4777e57311181aa5087961704627195b26b6bceb0361031d62749265ac0ecc1", - "specs/archive/011-enhanced-usage-tracking/contracts/commands.md": "02f7c76742106c3d9624c1da558b4cec7bfabb59c9436772d83afa76e0647726", - "specs/archive/011-keychain-lifecycle-management/data-model.md": "7d4dd16012fb1c28a24bb87dc9661019aceff9fe3dda7f661eaff9507439dc33", - "specs/archive/011-keychain-lifecycle-management/FOLLOW_UP.md": "761a0a2d3d0e257a0f9bf5da30680d09597e2ad4493fa39e169eea41f247a335", - "specs/archive/011-keychain-lifecycle-management/plan.md": "ebac0814cf3d238ac29cb63354ff64c729d227c4b2ab10a0f0cfaba9bf52ea6e", - "specs/archive/011-keychain-lifecycle-management/quickstart.md": "e763365077135d58aaaaf966254276a1b60bbf36fabb248913e72cf1b55cc93b", - "specs/archive/011-keychain-lifecycle-management/research.md": "901698cb066b7364b53e8e59a57371a07c355dbb27f641667409d265c87e57c4", - "specs/archive/011-keychain-lifecycle-management/spec.md": "dcd18e20e60d3f9f71abd8b760a77617d76535a3233e5255f99dba72f208db3c", - "specs/archive/011-keychain-lifecycle-management/tasks.md": "204d4c2572e77fd4d5fdd2bb16ffd9f5ebe4d8000916400da6c9d397c53d2775", - "specs/archive/011-keychain-lifecycle-management/checklists/requirements.md": "4cd7b8b9a12253d2a7f4ec12d5a7e2c78b3ef1d85dc5e691536d2f2680adecd8", - "specs/archive/011-keychain-lifecycle-management/contracts/commands.md": "a74568f84f5cc474b398a8966ffde73ceab263f173a9e42eebb9520510d16683", - "specs/archive/012-vault-metadata-for/data-model.md": "bb7af1b0e5f57d01dc43664007279dbbe1ebd9575f3d5b2c352c23aec879b96b", - "specs/archive/012-vault-metadata-for/plan.md": "9f3049e89071f47a0df5e1b7d3348fa8e8209e62a0feae02a4f81fc1ef71dc2d", - "specs/archive/012-vault-metadata-for/quickstart.md": "9ef9a5255ec0d10b987fd86650b58c51c0eea0a562ad8a222bd5c31322cd1996", - "specs/archive/012-vault-metadata-for/research.md": "4f9e314a2a89c34f0365f856045e36220881f760e2498e8c086a6db45be996a4", - "specs/archive/012-vault-metadata-for/spec.md": "9e1ba54adbe86b4af5ef0206593bbbbb0d1ab704db2f2382f40b02a0c9ccce99", - "specs/archive/012-vault-metadata-for/tasks.md": "7550706a28c4d4513d80487535158cde87475197e8e08a28107de17ec711a90f", - "specs/archive/012-vault-metadata-for/checklists/requirements.md": "6abaf4ba567331174c503b8f6480c3a6d766b71de4745854e9417656d9b4a9f3", - "specs/archive/012-vault-metadata-for/contracts/vault-metadata-schema.json": "f373760db88ea988ad88532c9c690f0714c93613402ec21a33565ec8950a2dad" + "scoop/pass-cli.json": "35b1c6462993e009b89a98ff3303e44c663a89681c19592e1576ca8d3a7213ec" } } \ No newline at end of file diff --git a/.doc-manager/memory/symbol-baseline.json b/.doc-manager/memory/symbol-baseline.json index 032fddc9..7b6ca00c 100644 --- a/.doc-manager/memory/symbol-baseline.json +++ b/.doc-manager/memory/symbol-baseline.json @@ -1,7 +1,7 @@ { "version": "1.0", "created_at": "2025-11-29T04:31:53.752027+00:00", - "updated_at": "2025-11-29T04:31:53.752027+00:00", + "updated_at": "2025-11-29T04:35:17.611793+00:00", "project_root": "R:\\Test-Projects\\pass-cli", "symbols": { "init": [ From 13d785d901f0843cdc8ba29a00b113e86d34ca36 Mon Sep 17 00:00:00 2001 From: Ari Date: Fri, 28 Nov 2025 23:44:18 -0500 Subject: [PATCH 09/19] docs: fix contributing.md link and update doc conventions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Link Fix: - contributing.md:472: Changed [docs/](/) to [docs/](../_index.md) - Hugo-compatible relative link to documentation index Doc Conventions Updates: - Changed heading case: sentence_case → title_case - Changed max depth: 3 → 6 - Aligns config with actual documentation style These changes match the existing documentation conventions rather than imposing arbitrary style rules. Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager/memory/doc-conventions.yml | 4 ++-- docs/06-development/contributing.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.doc-manager/memory/doc-conventions.yml b/.doc-manager/memory/doc-conventions.yml index e29f8427..6870d0f0 100644 --- a/.doc-manager/memory/doc-conventions.yml +++ b/.doc-manager/memory/doc-conventions.yml @@ -10,7 +10,7 @@ style: # Examples: # sentence_case: "This is a heading" # title_case: "This Is A Heading" - case: sentence_case + case: title_case # Enforce consistent heading case throughout project consistency_required: true @@ -43,7 +43,7 @@ structure: min_length: 500 # Maximum heading depth (1-6, where 1 is #, 6 is ######) - max_heading_depth: 3 + max_heading_depth: 6 # Enforce strict heading hierarchy (no skipping levels: H1→H3 is invalid) # Options: strict | relaxed diff --git a/docs/06-development/contributing.md b/docs/06-development/contributing.md index a289a588..8e332259 100644 --- a/docs/06-development/contributing.md +++ b/docs/06-development/contributing.md @@ -469,7 +469,7 @@ For questions or discussions, visit [GitHub Discussions](https://github.com/ari1 - **Issues**: [GitHub Issues](https://github.com/ari1110/pass-cli/issues) - **Discussions**: [GitHub Discussions](https://github.com/ari1110/pass-cli/discussions) -- **Documentation**: [docs/](../) +- **Documentation**: [docs/](../_index.md) ## Resources From b150becec115ce1b2faef5506b5bad6b3969beec Mon Sep 17 00:00:00 2001 From: Ari Date: Fri, 28 Nov 2025 23:52:29 -0500 Subject: [PATCH 10/19] docs: revert heading case convention to sentence_case Reverted case: title_case -> sentence_case Analysis showed documentation uses sentence case headings (e.g., "Getting started", "Initialize vault") not title case. Changing to title_case created 127 new validation warnings. Impact: - Validation warnings: 207 -> 153 (eliminated 54 warnings) - Baselines resynced Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager/memory/doc-conventions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.doc-manager/memory/doc-conventions.yml b/.doc-manager/memory/doc-conventions.yml index 6870d0f0..8378c2b2 100644 --- a/.doc-manager/memory/doc-conventions.yml +++ b/.doc-manager/memory/doc-conventions.yml @@ -10,7 +10,7 @@ style: # Examples: # sentence_case: "This is a heading" # title_case: "This Is A Heading" - case: title_case + case: sentence_case # Enforce consistent heading case throughout project consistency_required: true From 29447fe9763a2fd54194bd2c1b9374d7187313d7 Mon Sep 17 00:00:00 2001 From: Ari Date: Sat, 29 Nov 2025 00:10:22 -0500 Subject: [PATCH 11/19] docs: standardize headings to Title Case convention MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixed 30 heading case inconsistencies across 10 documentation files: Files modified: - 01-getting-started/manual-install.md - 02-guides/backup-restore.md - 03-reference/command-reference.md (11 headings) - 03-reference/migration.md (Q&A section) - 03-reference/security-architecture.md - 05-operations/health-checks.md - 06-development/branch-workflow.md (10 headings) - 06-development/scoop.md - docs/README.md - docs/_index.md Changes include: - Fixed prepositions: "from" → "From", "with" → "With" - Fixed Q&A headings to Title Case - Fixed compound verbs: "back up" → "Back Up" - Standardized frontmatter titles Validation: 112 → 82 warnings (27% reduction) Remaining: Mostly YAML frontmatter titles on line 2 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- docs/01-getting-started/manual-install.md | 4 +-- docs/02-guides/backup-restore.md | 2 +- docs/03-reference/command-reference.md | 22 ++++++++-------- docs/03-reference/migration.md | 30 +++++++++++----------- docs/03-reference/security-architecture.md | 2 +- docs/05-operations/health-checks.md | 4 +-- docs/06-development/branch-workflow.md | 20 +++++++-------- docs/06-development/scoop.md | 4 +-- docs/README.md | 2 +- docs/_index.md | 2 +- 10 files changed, 46 insertions(+), 46 deletions(-) diff --git a/docs/01-getting-started/manual-install.md b/docs/01-getting-started/manual-install.md index e6597d75..3b974896 100644 --- a/docs/01-getting-started/manual-install.md +++ b/docs/01-getting-started/manual-install.md @@ -6,7 +6,7 @@ toc: true Manual installation gives you direct control over the binary location and version. -### Download Pre-built Binaries +### Download Pre-Built Binaries 1. **Visit the Releases Page** @@ -166,7 +166,7 @@ $env:Path = [System.Environment]::GetEnvironmentVariable("Path", "Machine") + "; pass-cli version ``` -## Building from Source +## Building From Source Building from source gives you the latest development version and allows customization. diff --git a/docs/02-guides/backup-restore.md b/docs/02-guides/backup-restore.md index 6948c2ce..b3ffbab3 100644 --- a/docs/02-guides/backup-restore.md +++ b/docs/02-guides/backup-restore.md @@ -96,7 +96,7 @@ pass-cli vault backup create --verbose - **Before system changes**: OS upgrades, migrations, or hardware changes - **Before major updates**: Upgrading pass-cli to a new version -## Restoring from Backup +## Restoring From Backup The restore command automatically selects the newest valid backup (manual or automatic) and replaces your current vault. diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index b626b4a4..6b5049b1 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -900,7 +900,7 @@ Manages settings for: #### Subcommands -##### config init +##### Config Init Create configuration file with commented examples. @@ -928,7 +928,7 @@ Edit the file to customize your settings: - Vault location ``` -##### config edit +##### Config Edit Open configuration file in your default editor. @@ -953,7 +953,7 @@ pass-cli config edit EDITOR=vim pass-cli config edit ``` -##### config validate +##### Config Validate Validate configuration file syntax and settings. @@ -1001,7 +1001,7 @@ Line 34: Unknown action: 'invalid_action' Fix these errors and run 'config validate' again. ``` -##### config reset +##### Config Reset Reset configuration to default values. @@ -1053,7 +1053,7 @@ pass-cli keychain #### Subcommands -##### keychain enable +##### Keychain Enable Enable keychain integration for an existing vault by storing the master password in the system keychain. @@ -1091,7 +1091,7 @@ Master password: ******** Future commands will not prompt for password when keychain is available. ``` -##### keychain status +##### Keychain Status Display keychain integration status for the current vault. @@ -1166,7 +1166,7 @@ pass-cli vault #### Subcommands -##### vault remove +##### Vault Remove Permanently delete a vault file and its associated keychain entry. @@ -1219,7 +1219,7 @@ Are you sure you want to remove /home/user/.pass-cli/vault.enc? (y/n): y • Orphaned entries cleaned up ``` -##### vault backup +##### Vault Backup Manage vault backups for disaster recovery. @@ -1228,7 +1228,7 @@ Manage vault backups for disaster recovery. pass-cli vault backup ``` -###### vault backup create +###### Vault Backup Create Create a timestamped manual backup of the vault. @@ -1262,7 +1262,7 @@ pass-cli vault backup create --verbose Size: 2.45 MB ``` -###### vault backup restore +###### Vault Backup Restore Restore vault from the most recent backup. @@ -1311,7 +1311,7 @@ Are you sure you want to restore from this backup? (y/n): y [OK] Vault restored successfully from backup ``` -###### vault backup info +###### Vault Backup Info View backup status and information. diff --git a/docs/03-reference/migration.md b/docs/03-reference/migration.md index 0c595511..43799aa7 100644 --- a/docs/03-reference/migration.md +++ b/docs/03-reference/migration.md @@ -295,7 +295,7 @@ pass-cli migrate --iterations 600000 --enable-audit ## Troubleshooting -### Problem: "Password does not meet requirements" +### Problem: "Password Does Not Meet Requirements" **Symptom**: Error when creating/updating credentials. @@ -314,7 +314,7 @@ Admin#2025$Password pass-cli generate # Automatically meets policy requirements ``` -### Problem: Vault unlock is slower after upgrade +### Problem: Vault Unlock Is Slower After Upgrade **Symptom**: Vault unlock takes 50-100ms instead of 15-20ms. @@ -327,7 +327,7 @@ pass-cli generate # Automatically meets policy requirements - Mid-range CPU (2018-2022): 200-500ms - Older CPU (2015-2017): 500-1000ms -### Problem: Cannot downgrade to older Pass-CLI version +### Problem: Cannot Downgrade to Older Pass-CLI Version **Symptom**: "Invalid vault format" error when using old Pass-CLI with new vault. @@ -336,7 +336,7 @@ pass-cli generate # Automatically meets policy requirements 2. Or create new vault with old Pass-CLI version 3. Or upgrade to latest Pass-CLI version -### Problem: Audit log verification fails +### Problem: Audit Log Verification Fails **Symptom**: `pass-cli verify-audit` reports HMAC verification failures. @@ -357,7 +357,7 @@ mv ~/.pass-cli/audit.log ~/.pass-cli/audit.log.corrupted pass-cli init --enable-audit ``` -### Problem: "Vault file corrupted" after migration +### Problem: "Vault File Corrupted" After Migration **Symptom**: Cannot unlock vault after re-initialization. @@ -374,15 +374,15 @@ pass-cli list ## FAQ -### Q: Do I have to migrate? +### Q: Do I Have to Migrate? **A**: No. Existing vaults with 100k iterations continue to work indefinitely. Migration is optional for users wanting stronger security. -### Q: Will migration delete my credentials? +### Q: Will Migration Delete My Credentials? **A**: No. Migration is non-destructive. Always creates backup before changes. Credentials are preserved. -### Q: How long does migration take? +### Q: How Long Does Migration Take? **A**: Depends on vault size: - Small vault (< 20 credentials): 5-10 minutes @@ -391,31 +391,31 @@ pass-cli list Time includes manual re-entry of credentials. Future in-place migration will be automatic (seconds). -### Q: Can I migrate back to 100k iterations? +### Q: Can I Migrate Back to 100k Iterations? **A**: Technically yes (create new vault), but not recommended. Forward migration only makes sense for security. -### Q: Does audit logging slow down vault operations? +### Q: Does Audit Logging Slow Down Vault Operations? **A**: Minimal impact (~1-2ms per operation). Audit logging uses asynchronous writes and graceful degradation. -### Q: What if I forget my master password after migration? +### Q: What If I Forget My Master Password After Migration? **A**: If you enabled BIP39 recovery during `pass-cli init`, you can recover using `pass-cli change-password --recover` and your 24-word recovery phrase. If you used `--no-recovery` or are on an older vault without recovery, the vault is unrecoverable. Keep master password and recovery phrase backups secure. -### Q: Are audit logs encrypted? +### Q: Are Audit Logs Encrypted? **A**: Audit logs are **not encrypted** (they contain service names, not passwords). Logs are **tamper-evident** via HMAC signatures. If encryption is required, use full-disk encryption. -### Q: Can I disable audit logging after enabling? +### Q: Can I Disable Audit Logging After Enabling? **A**: Yes, but audit logs remain on disk. You can manually delete old logs. Future releases may add a command to disable audit logging cleanly. -### Q: Will old Pass-CLI versions work with migrated vaults? +### Q: Will Old Pass-CLI Versions Work With Migrated Vaults? **A**: No. 600k iteration vaults require January 2025+ Pass-CLI versions. Keep old vault backup if you need old version compatibility. -### Q: Is there a tool to convert vault format? +### Q: Is There a Tool to Convert Vault Format? **A**: Not yet. Currently requires manual re-initialization. In-place migration planned for future release. diff --git a/docs/03-reference/security-architecture.md b/docs/03-reference/security-architecture.md index 189cc021..a0caaaa8 100644 --- a/docs/03-reference/security-architecture.md +++ b/docs/03-reference/security-architecture.md @@ -74,7 +74,7 @@ Master Key = PBKDF2( 3. **Standard**: NIST recommended for password-based cryptography 4. **Deterministic**: Same password + salt = same key -#### Migration from 100k to 600k Iterations +#### Migration From 100k to 600k Iterations - **Backward Compatibility**: Vaults with 100k iterations continue to work - **Automatic Detection**: Iteration count stored in vault metadata diff --git a/docs/05-operations/health-checks.md b/docs/05-operations/health-checks.md index 163dde8f..b2b6722c 100644 --- a/docs/05-operations/health-checks.md +++ b/docs/05-operations/health-checks.md @@ -148,7 +148,7 @@ esac **Solution**: Update pass-cli to the latest version using your package manager or download from GitHub. -#### Network Timeout (Pass with Error) +#### Network Timeout (Pass With Error) **Symptom**: ```text @@ -357,7 +357,7 @@ echo "pass_cli_health_status $metric" >> /var/lib/prometheus/node_exporter/pass_ ## Troubleshooting Tips -### Run with Verbose Logging +### Run With Verbose Logging For detailed diagnostic information: diff --git a/docs/06-development/branch-workflow.md b/docs/06-development/branch-workflow.md index b6f80142..7a2aab26 100644 --- a/docs/06-development/branch-workflow.md +++ b/docs/06-development/branch-workflow.md @@ -202,22 +202,22 @@ git push origin v0.x.x ## Common Commands -### Check which branch you're on +### Check Which Branch You're On ```bash git branch --show-current ``` -### See recent commits on main +### See Recent Commits on Main ```bash git log main --oneline -10 ``` -### Compare your branch with main +### Compare Your Branch With Main ```bash git diff main..HEAD ``` -### Update your branch with latest main +### Update Your Branch With Latest Main ```bash # While on your feature branch git fetch origin @@ -227,12 +227,12 @@ git rebase origin/main git merge origin/main ``` -### List all branches +### List All Branches ```bash git branch -a ``` -### Delete merged feature branches +### Delete Merged Feature Branches ```bash # Delete local branch git branch -d feat/my-feature @@ -253,7 +253,7 @@ git push origin --delete feat/my-feature ## Troubleshooting -### "Cannot push to main" error +### "Cannot Push to Main" Error This is expected! Create a pull request from your feature branch instead. ```bash @@ -264,7 +264,7 @@ git checkout feat/my-feature # Switch to your feature branch # Now push and create PR ``` -### PR has merge conflicts +### PR Has Merge Conflicts ```bash # Update your branch with latest main @@ -281,7 +281,7 @@ git rebase --continue git push origin your-feature-branch --force-with-lease ``` -### CI failing on your PR +### CI Failing on Your PR ```bash # Pull the latest changes from your PR branch @@ -299,7 +299,7 @@ git push origin your-feature-branch # CI will automatically re-run on the PR ``` -### Forgot to create feature branch +### Forgot to Create Feature Branch ```bash # If you made changes directly on main diff --git a/docs/06-development/scoop.md b/docs/06-development/scoop.md index edadaef4..95d94eac 100644 --- a/docs/06-development/scoop.md +++ b/docs/06-development/scoop.md @@ -338,7 +338,7 @@ When releasing a new version: git commit -am "pass-cli: Update to version 1.1.0" ``` -### Automatic Update (with checkver) +### Automatic Update (With Checkver) If autoupdate is configured correctly, maintainers can update automatically: @@ -495,7 +495,7 @@ For maintainers updating the manifest: - [ ] Tag release in pass-cli repository - [ ] Update release notes -## Integration with CI/CD +## Integration With CI/CD Add to your release workflow: diff --git a/docs/README.md b/docs/README.md index 1f7543fb..07aa4839 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,5 +1,5 @@ --- -title: "pass-cli Documentation" +title: "Pass-CLI Documentation" --- ![Version](https://img.shields.io/github/v/release/ari1110/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/ari1110/pass-cli?path=docs&label=Last%20Updated) diff --git a/docs/_index.md b/docs/_index.md index eefe37da..df439a30 100644 --- a/docs/_index.md +++ b/docs/_index.md @@ -1,5 +1,5 @@ --- -title: "pass-cli Documentation" +title: "Pass-CLI Documentation" cascade: type: docs --- From c619ce735651143cb51b6ed27c001faae0f896ff Mon Sep 17 00:00:00 2001 From: Ari Date: Wed, 3 Dec 2025 15:44:42 -0500 Subject: [PATCH 12/19] docs: enhance doc-manager config and fix heading case issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add api_coverage section with go-test preset to .doc-manager.yml - Enable include_root_readme for root README validation - Add brand name exceptions (macOS, iOS, GoReleaser, etc.) to doc-conventions.yml - Fix code block language tag in README.md (ASCII art) - Fix heading case "using" -> "Using" in manual-install.md - Update all baselines to current state 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager.yml | 10 +- .doc-manager/dependencies.json | 314 ++++++++++++++++++---- .doc-manager/memory/doc-conventions.yml | 18 +- .doc-manager/memory/repo-baseline.json | 28 +- .doc-manager/memory/symbol-baseline.json | 2 +- README.md | 2 +- docs/01-getting-started/manual-install.md | 2 +- 7 files changed, 308 insertions(+), 68 deletions(-) diff --git a/.doc-manager.yml b/.doc-manager.yml index 5b2319cd..bcf365d8 100644 --- a/.doc-manager.yml +++ b/.doc-manager.yml @@ -23,7 +23,15 @@ metadata: language: Go created: '2025-11-28T23:13:03.879609' version: 1.0.0 -include_root_readme: false +include_root_readme: true + +api_coverage: + strategy: all_then_underscore + preset: go-test + exclude_symbols: + - "*_test" + - "mock*" + - "Mock*" # ============================================================================ # Configuration Guide & Examples diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json index a8a84f9c..bbdccb1c 100644 --- a/.doc-manager/dependencies.json +++ b/.doc-manager/dependencies.json @@ -1,5 +1,5 @@ { - "generated_at": "2025-11-28T23:35:18.475441", + "generated_at": "2025-12-03T15:44:16.471148", "doc_to_code": { "01-getting-started/manual-install.md": [ "cmd/init.go", @@ -177,7 +177,18 @@ "cmd/version.go" ], "_index.md": [], - "README.md": [] + "README.md": [ + "cmd/doctor.go", + "cmd/generate.go", + "cmd/init.go", + "cmd/keychain_enable.go", + "cmd/keychain_status.go", + "cmd/list.go", + "cmd/vault_backup_create.go", + "cmd/vault_backup_info.go", + "cmd/vault_backup_restore.go", + "cmd/vault_remove.go" + ] }, "code_to_doc": { "cmd/init.go": [ @@ -193,7 +204,8 @@ "04-troubleshooting/vault.md", "05-operations/health-checks.md", "05-operations/security-operations.md", - "06-development/contributing.md" + "06-development/contributing.md", + "README.md" ], "cmd/version.go": [ "01-getting-started/manual-install.md", @@ -220,7 +232,8 @@ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", "03-reference/command-reference.md", - "05-operations/health-checks.md" + "05-operations/health-checks.md", + "README.md" ], "cmd/get.go": [ "01-getting-started/quick-start.md", @@ -240,7 +253,8 @@ "04-troubleshooting/installation.md", "04-troubleshooting/tui.md", "04-troubleshooting/vault.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "cmd/update.go": [ "01-getting-started/quick-start.md", @@ -248,31 +262,37 @@ ], "cmd/vault_backup_create.go": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "cmd/vault_backup_info.go": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "cmd/vault_backup_restore.go": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "cmd/generate.go": [ "02-guides/basic-workflows.md", "03-reference/command-reference.md", "03-reference/migration.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "cmd/keychain_enable.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "cmd/keychain_status.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "cmd/tui.go": [ "02-guides/basic-workflows.md", @@ -370,7 +390,8 @@ "03-reference/command-reference.md" ], "cmd/vault_remove.go": [ - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "cmd/root.go": [ "06-development/contributing.md" @@ -387,7 +408,8 @@ "03-reference/command-reference.md", "03-reference/migration.md", "04-troubleshooting/tui.md", - "06-development/homebrew.md" + "06-development/homebrew.md", + "README.md" ], "explicit": [ "01-getting-started/manual-install.md", @@ -414,7 +436,8 @@ "04-troubleshooting/keychain.md", "04-troubleshooting/vault.md", "05-operations/health-checks.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "pass-cli add test # Add a test credential": [ "01-getting-started/manual-install.md" @@ -443,14 +466,16 @@ "04-troubleshooting/installation.md", "04-troubleshooting/tui.md", "04-troubleshooting/vault.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "pass-cli add github": [ "01-getting-started/quick-start.md", "02-guides/backup-restore.md", "02-guides/basic-workflows.md", "03-reference/command-reference.md", - "03-reference/migration.md" + "03-reference/migration.md", + "README.md" ], "vault-requiring": [ "01-getting-started/quick-start.md", @@ -463,7 +488,8 @@ "02-guides/tui-guide.md", "03-reference/command-reference.md", "03-reference/migration.md", - "04-troubleshooting/tui.md" + "04-troubleshooting/tui.md", + "README.md" ], "vault.enc.backup": [ "02-guides/backup-restore.md", @@ -473,18 +499,21 @@ ], "pass-cli vault backup info": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli vault backup create": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli doctor": [ "02-guides/backup-restore.md", "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", "03-reference/command-reference.md", - "05-operations/health-checks.md" + "05-operations/health-checks.md", + "README.md" ], "restore": [ "02-guides/backup-restore.md" @@ -494,13 +523,15 @@ ], "pass-cli vault backup restore": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli generate": [ "02-guides/basic-workflows.md", "03-reference/command-reference.md", "03-reference/migration.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "pass-cli generate --length": [ "02-guides/basic-workflows.md" @@ -517,23 +548,27 @@ "pass-cli keychain enable": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli keychain status": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli get github --json": [ "02-guides/basic-workflows.md" ], "pass-cli update github": [ "02-guides/basic-workflows.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli delete github": [ "02-guides/basic-workflows.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli tui # Opens directly, no password prompt": [ "02-guides/basic-workflows.md", @@ -551,7 +586,8 @@ "03-reference/command-reference.md", "03-reference/security-architecture.md", "04-troubleshooting/faq.md", - "04-troubleshooting/vault.md" + "04-troubleshooting/vault.md", + "README.md" ], "in": [ "02-guides/scripting-guide.md" @@ -609,7 +645,8 @@ "02-guides/usage-tracking.md" ], "cli": [ - "03-reference/_index.md" + "03-reference/_index.md", + "README.md" ], "MyPassword": [ "03-reference/command-reference.md" @@ -618,13 +655,15 @@ "03-reference/command-reference.md", "03-reference/migration.md", "03-reference/security-architecture.md", - "04-troubleshooting/vault.md" + "04-troubleshooting/vault.md", + "README.md" ], "EDITOR": [ "03-reference/command-reference.md" ], "pass-cli init --enable-audit": [ - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli get github --quiet": [ "03-reference/command-reference.md" @@ -881,6 +920,18 @@ ], "pass-cli --help": [ "06-development/scoop.md" + ], + "pass-cli init --no-recovery": [ + "README.md" + ], + "cross-platform": [ + "README.md" + ], + "core": [ + "README.md" + ], + "pass-cli vault remove": [ + "README.md" ] }, "reference_to_doc": { @@ -897,7 +948,8 @@ "03-reference/command-reference.md", "03-reference/migration.md", "04-troubleshooting/tui.md", - "06-development/homebrew.md" + "06-development/homebrew.md", + "README.md" ], "explicit": [ "01-getting-started/manual-install.md", @@ -924,7 +976,8 @@ "04-troubleshooting/keychain.md", "04-troubleshooting/vault.md", "05-operations/health-checks.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "pass-cli add test # Add a test credential": [ "01-getting-started/manual-install.md" @@ -968,7 +1021,8 @@ ], "doctor": [ "01-getting-started/quick-start.md", - "05-operations/health-checks.md" + "05-operations/health-checks.md", + "README.md" ], "help": [ "01-getting-started/quick-start.md", @@ -989,7 +1043,8 @@ "04-troubleshooting/installation.md", "04-troubleshooting/tui.md", "04-troubleshooting/vault.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "echo": [ "01-getting-started/quick-start.md" @@ -999,7 +1054,8 @@ "02-guides/backup-restore.md", "02-guides/basic-workflows.md", "03-reference/command-reference.md", - "03-reference/migration.md" + "03-reference/migration.md", + "README.md" ], "vault-requiring": [ "01-getting-started/quick-start.md", @@ -1012,7 +1068,8 @@ "02-guides/tui-guide.md", "03-reference/command-reference.md", "03-reference/migration.md", - "04-troubleshooting/tui.md" + "04-troubleshooting/tui.md", + "README.md" ], "vault.enc.backup": [ "02-guides/backup-restore.md", @@ -1025,25 +1082,29 @@ ], "pass-cli vault backup info": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli vault backup create": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli doctor": [ "02-guides/backup-restore.md", "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", "03-reference/command-reference.md", - "05-operations/health-checks.md" + "05-operations/health-checks.md", + "README.md" ], "restore": [ "02-guides/backup-restore.md" ], "pass-cli vault backup restore": [ "02-guides/backup-restore.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "secret-tool clear service pass-cli": [ "02-guides/basic-workflows.md" @@ -1056,7 +1117,8 @@ "02-guides/basic-workflows.md", "03-reference/command-reference.md", "03-reference/migration.md", - "05-operations/security-operations.md" + "05-operations/security-operations.md", + "README.md" ], "pass-cli generate --length": [ "02-guides/basic-workflows.md" @@ -1073,23 +1135,27 @@ "pass-cli keychain enable": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli keychain status": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli get github --json": [ "02-guides/basic-workflows.md" ], "pass-cli update github": [ "02-guides/basic-workflows.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli delete github": [ "02-guides/basic-workflows.md", - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli tui # Opens directly, no password prompt": [ "02-guides/basic-workflows.md", @@ -1110,7 +1176,8 @@ "03-reference/command-reference.md", "03-reference/security-architecture.md", "04-troubleshooting/faq.md", - "04-troubleshooting/vault.md" + "04-troubleshooting/vault.md", + "README.md" ], "in": [ "02-guides/scripting-guide.md" @@ -1177,7 +1244,8 @@ "02-guides/usage-tracking.md" ], "cli": [ - "03-reference/_index.md" + "03-reference/_index.md", + "README.md" ], "password123": [ "03-reference/command-reference.md" @@ -1189,7 +1257,8 @@ "03-reference/command-reference.md", "03-reference/migration.md", "03-reference/security-architecture.md", - "04-troubleshooting/vault.md" + "04-troubleshooting/vault.md", + "README.md" ], "username": [ "03-reference/command-reference.md" @@ -1243,7 +1312,8 @@ "03-reference/command-reference.md" ], "pass-cli init --enable-audit": [ - "03-reference/command-reference.md" + "03-reference/command-reference.md", + "README.md" ], "pass-cli get github --quiet": [ "03-reference/command-reference.md" @@ -1600,6 +1670,21 @@ ], "pass-cli --help": [ "06-development/scoop.md" + ], + "pass-cli init --no-recovery": [ + "README.md" + ], + "pass": [ + "README.md" + ], + "cross-platform": [ + "README.md" + ], + "core": [ + "README.md" + ], + "pass-cli vault remove": [ + "README.md" ] }, "all_references": { @@ -3469,6 +3554,114 @@ { "reference": "pass-cli --help", "doc_file": "06-development/scoop.md" + }, + { + "reference": "doctor", + "doc_file": "README.md" + }, + { + "reference": "pass-cli keychain enable", + "doc_file": "README.md" + }, + { + "reference": "pass-cli keychain status", + "doc_file": "README.md" + }, + { + "reference": "pass-cli change-password --recover", + "doc_file": "README.md" + }, + { + "reference": "pass-cli init --no-recovery", + "doc_file": "README.md" + }, + { + "reference": "pass-cli init --enable-audit", + "doc_file": "README.md" + }, + { + "reference": "pass", + "doc_file": "README.md" + }, + { + "reference": "pass-cli init", + "doc_file": "README.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "README.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "README.md" + }, + { + "reference": "pass-cli list", + "doc_file": "README.md" + }, + { + "reference": "pass-cli", + "doc_file": "README.md" + }, + { + "reference": "pass-cli list", + "doc_file": "README.md" + }, + { + "reference": "pass-cli init", + "doc_file": "README.md" + }, + { + "reference": "pass-cli add github", + "doc_file": "README.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "README.md" + }, + { + "reference": "pass-cli get github", + "doc_file": "README.md" + }, + { + "reference": "pass-cli list", + "doc_file": "README.md" + }, + { + "reference": "pass-cli update github", + "doc_file": "README.md" + }, + { + "reference": "pass-cli delete github", + "doc_file": "README.md" + }, + { + "reference": "pass-cli generate", + "doc_file": "README.md" + }, + { + "reference": "pass-cli vault remove", + "doc_file": "README.md" + }, + { + "reference": "pass-cli vault backup create", + "doc_file": "README.md" + }, + { + "reference": "pass-cli vault backup restore", + "doc_file": "README.md" + }, + { + "reference": "pass-cli vault backup info", + "doc_file": "README.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "README.md" + }, + { + "reference": "pass-cli change-password", + "doc_file": "README.md" } ], "semantic_command": [ @@ -3607,6 +3800,26 @@ { "reference": "complete", "doc_file": "README.md" + }, + { + "reference": "cross-platform", + "doc_file": "README.md" + }, + { + "reference": "complete", + "doc_file": "README.md" + }, + { + "reference": "doctor", + "doc_file": "README.md" + }, + { + "reference": "cli", + "doc_file": "README.md" + }, + { + "reference": "core", + "doc_file": "README.md" } ], "class": [ @@ -3774,6 +3987,9 @@ "06-development/scoop.md", "_index.md", "README.md" + ], + "https://img.shields.io/github/last-commit/ari1110/pass-cli?label=Last%20Updated": [ + "README.md" ] } } \ No newline at end of file diff --git a/.doc-manager/memory/doc-conventions.yml b/.doc-manager/memory/doc-conventions.yml index 8378c2b2..d7dfa506 100644 --- a/.doc-manager/memory/doc-conventions.yml +++ b/.doc-manager/memory/doc-conventions.yml @@ -10,11 +10,27 @@ style: # Examples: # sentence_case: "This is a heading" # title_case: "This Is A Heading" - case: sentence_case + case: title_case # Enforce consistent heading case throughout project consistency_required: true + # Brand names and terms that should not be case-corrected + # These maintain their original casing even in title_case headings + exceptions: + - macOS + - iOS + - iPadOS + - iPhone + - iPad + - GoReleaser + - GitHub + - GitLab + - PowerShell + - npm + - pnpm + - yarn + code: # Format for inline code references: backticks | html inline_format: backticks diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json index 01b5ed33..72888b4e 100644 --- a/.doc-manager/memory/repo-baseline.json +++ b/.doc-manager/memory/repo-baseline.json @@ -5,10 +5,10 @@ "docs_exist": true, "docs_path": "docs", "metadata": { - "git_commit": "2c21b8c3a29029a9ac7ca5d1a424653538e42455", + "git_commit": "29447fe9763a2fd54194bd2c1b9374d7187313d7", "git_branch": "docs/review-with-doc-manager" }, - "timestamp": "2025-11-28T23:35:17.502454", + "timestamp": "2025-12-03T15:44:14.634222", "version": "1.0.0", "file_count": 126, "files": { @@ -19,7 +19,7 @@ "go.sum": "e12956337ce5b0c90e0f137f3051838935003455109513e8696ea006fac3c3e7", "LICENSE": "a66c73aa52d80b8e6287af2d3b4ed036ceb2f9decb540ed411cccc7a39ad215b", "main.go": "b9d587d7c749d5b70b152fe8dc42f727b213ca765ac8507359ea4b5b5ce6d374", - "README.md": "3b05f3537f17c075a92980d2267d31e0b9c9f74236bcd63067c296dd07d63a15", + "README.md": "64ea45c7398b79799dccb0d59051980854a24e9b3dc55eac0f3517a8220524b1", "SECURITY.md": "46b11317eb0c8d8efe21f891060dd4c722d973c8debf7c89fefa99b8d829ccf2", "cmd/add.go": "5bb7d5bbee88304fa8cdfe3c268baedd8805610030aa98740575fdb11983f11e", "cmd/change_password.go": "8355659b5a9bf4693d81092b03ad7d936c6043207b97c4dcea02e7cbf0386e2f", @@ -61,14 +61,14 @@ "cmd/tui/models/search.go": "baf4867219d8f1a6d2851a25240ef00de14a961ece1ef91693f0afe9204a3b99", "cmd/tui/models/state.go": "2dcff4b9218d00025b0ee7b3e2f876dd21b14ce34eef6f9ba77d4012e1e2ec59", "cmd/tui/styles/theme.go": "5713de3928333c8161eabebd093f61cd8d1a92c504c10913f2fbdae07444e398", - "docs/README.md": "19b0908283717cec8a16127f5480a4398ea0318f408db0ca00e32690f1faa792", - "docs/_index.md": "deb6746b1bfe87dcfd60c12d95c58145425f9ca8ade8e6f08af6f837eea0bdf3", - "docs/01-getting-started/manual-install.md": "8e172bdaf1ae86107d6a9101713c00e3f409b6eda6ec67d97a0e53d719c054ff", + "docs/README.md": "419f41600e8b9469527c9d90751fd8c79a09b5d698fe53e645539f808da9b6cd", + "docs/_index.md": "018b6dcec4fd9db3d98657d1a5b4dcb94367a3d0ce6e2b2248dbca1198940fc7", + "docs/01-getting-started/manual-install.md": "19f4d5fa7b358cb989c7d1855acbc13a5c59912d11da1116f64e02cd8c9e3209", "docs/01-getting-started/quick-install.md": "776259dee84c9e2f074a590b79b2c484e64bdd5f977cce016dbf3df77d899b5e", "docs/01-getting-started/quick-start.md": "76100d9574216c50a4ec25bba6f96100937db004fa2a01be4d72c450abd1840e", "docs/01-getting-started/uninstall.md": "c7b3686bb8920dcd1a2912d76cb9fbc401e3a1fb31f16cc86f9db5b64b04068f", "docs/01-getting-started/_index.md": "24f76b99f8c6796d7dea7c50928a33938897d06a8b491c4906209612adfc25f6", - "docs/02-guides/backup-restore.md": "4125f87bf4b941b323e72e0cab99212f68be9ee551b5b5dfd32b5fdc5728c929", + "docs/02-guides/backup-restore.md": "96a9f8bed3561f9ba36b2d8041c86a263b185ca536e11a0d2f5416df41235308", "docs/02-guides/basic-workflows.md": "12b41a6ddec42e4b9a5027167e2a6b8b98bcd746d5a2e6c0c2d3a49aa0e5a1b8", "docs/02-guides/keychain-setup.md": "27e2499dab96d5cf776be1ea585cb378b2db80d7d44c21bb8820d2ca73ff0980", "docs/02-guides/recovery-phrase.md": "35dd31c9f3b4d043f0058626f8c7307d66b1886b9b3c34fc65d9c7352ff70c1b", @@ -76,11 +76,11 @@ "docs/02-guides/tui-guide.md": "e5837f5368e3fad5a2ae359a071b8d6cee7bc6cc1950fc0d0d4060694d32c457", "docs/02-guides/usage-tracking.md": "4ba15ce03bc86f33db7e4e6f0613c3a7984f6a5ce247c7318acf26e6783e68ed", "docs/02-guides/_index.md": "c6dd48a1975eda4610622424ba76f710bf05f94fe0a6bebe418addab4313ab06", - "docs/03-reference/command-reference.md": "c5b06b9159b7198e99f4fde070530a32c222c45eb10519c4c6565836cdabe603", + "docs/03-reference/command-reference.md": "457d1cdcb0022d00b3a475cd757c0361f76207ebda43562295fac0573a90b9b1", "docs/03-reference/configuration.md": "c10573f971340d1c69730d09119b59fb6d7e95d376ac648cd407644288278b71", "docs/03-reference/known-limitations.md": "cf6fc6396a8fb23a71da49b3703010c1c1a1158c36d16377539c9aa51dda396e", - "docs/03-reference/migration.md": "06879f2e2c5440954cce7292608be366e6859e8608c4449ff6e9adce9e5d4e7c", - "docs/03-reference/security-architecture.md": "be33c6836a5eaf961146b4d39c5100d762ac514b40509c121331fe7d34877b2c", + "docs/03-reference/migration.md": "96f44ddfe4b6b896b15220661c3f51144e54970365a74d2ce02ca6324415b5ba", + "docs/03-reference/security-architecture.md": "498365fbd9e7368c4afb1ddc84746e0bd86ed4da4af9b7c54c45800dc7c58241", "docs/03-reference/_index.md": "7f4375eb417603299a10f5b5514efec9375ecf0dbe5aac25bd10cb8d4d962703", "docs/04-troubleshooting/faq.md": "0f7a67ba120e9649473b0308ce1e5fb4260b4a90eb77382f00fa8557cf4b31ff", "docs/04-troubleshooting/installation.md": "241bb4919f0dfc69c8f7779ba7c9784845c09936a8a477832d423f4f3ce54c60", @@ -88,16 +88,16 @@ "docs/04-troubleshooting/tui.md": "a0f13894c2cbca0035dc18ae468551193342332d51c988ed72e9c2b52eaff6e6", "docs/04-troubleshooting/vault.md": "33d278ee3abc27044147b4807ad5f2b56df7e316adc110297058825c0d688add", "docs/04-troubleshooting/_index.md": "c9bed28801a06cf760d45358f8449fb9f73a227efae934cbd76700e335a14b18", - "docs/05-operations/health-checks.md": "9f73563c7de7e79434851037aec4429adf27b6c2137b41f5a24e40e6edf4a01f", + "docs/05-operations/health-checks.md": "596732e89ca82eb87138075f54d9ab42872e30259e8aa3e0e468867c3e1e67f0", "docs/05-operations/security-operations.md": "4f0823dc99fb74ecae7921e11b09166dfc1ee4dc0ad69136838561e71014bbf2", "docs/05-operations/_index.md": "1b243fc3b06e3c9218c76a6fae1ce9fe16c995c9d7fb486a0ad9e3ad8b0f74e1", - "docs/06-development/branch-workflow.md": "92f84804fd7a21d929070b423e159a47ea4b10649b562791cbf90b8995408fd9", + "docs/06-development/branch-workflow.md": "013ff876608e2015a6a9c2b33fa54303e911e59b23163a5565f6490042366d4a", "docs/06-development/ci-cd.md": "4c46a06f4b09ac02ffea3c00ab78a69d3ede84128cd8202c01fb3c1673e567b8", - "docs/06-development/contributing.md": "949c10367afbeb5dca927e22b0210d6617f383d36d62019d458e502e43dcbb76", + "docs/06-development/contributing.md": "11d19bbd1792aaa9162bab01602c43d7faaa08a73921f82d0a17427a785da559", "docs/06-development/documentation-lifecycle.md": "0fdad2b45406ac401c2b8085aee44521fff5215b76eeb14cb765ea02a80352cd", "docs/06-development/homebrew.md": "6b5cae03d66e72a7cebb88951eaafc8706a078aa3abc799ffd60a3eb5183b54d", "docs/06-development/release.md": "1476afcf264708f5146669ac50aec037f51255cde6f92401e20a50cf1eaaa48d", - "docs/06-development/scoop.md": "0ca35b10cb16cfe0703dbddcba3592185d8523ee98a5a765381af676d012697e", + "docs/06-development/scoop.md": "45da8095cbe0d7a2edf85d2e39ce18de907cffd3dfc562e3fcd5cf640a50aff1", "docs/06-development/_index.md": "0c42aa905b325d11412f118dddb08592ba6691f3f843356c5217c7fb1d32995f", "docsite/go.mod": "3a00b8ca7f8c1f0dbc8059d602ad62f6270f83b632d9ce6146b39ae0f82cafc7", "docsite/go.sum": "f77fa4d8c436f59bf47fced4c59314ec7404d8c214e4f08c30762d2654b7d258", diff --git a/.doc-manager/memory/symbol-baseline.json b/.doc-manager/memory/symbol-baseline.json index 7b6ca00c..4018a677 100644 --- a/.doc-manager/memory/symbol-baseline.json +++ b/.doc-manager/memory/symbol-baseline.json @@ -1,7 +1,7 @@ { "version": "1.0", "created_at": "2025-11-29T04:31:53.752027+00:00", - "updated_at": "2025-11-29T04:35:17.611793+00:00", + "updated_at": "2025-12-03T20:44:14.859700+00:00", "project_root": "R:\\Test-Projects\\pass-cli", "symbols": { "init": [ diff --git a/README.md b/README.md index 471a83e6..ab095a80 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -``` +```text ╔═══╗ ║ ║ ╔═╩═══╩═╗ diff --git a/docs/01-getting-started/manual-install.md b/docs/01-getting-started/manual-install.md index 3b974896..1a192a61 100644 --- a/docs/01-getting-started/manual-install.md +++ b/docs/01-getting-started/manual-install.md @@ -272,7 +272,7 @@ For maximum portability: CGO_ENABLED=0 go build -ldflags="-s -w" -o pass-cli . ``` -#### All Platforms (using GoReleaser) +#### All Platforms (Using GoReleaser) ```bash # Install GoReleaser From 69dae8f7b467ad433422703da464103450ae9696 Mon Sep 17 00:00:00 2001 From: Ari Date: Wed, 3 Dec 2025 22:51:43 -0500 Subject: [PATCH 13/19] docs: optimize doc-manager config to focus on user-facing config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add exclude_symbols for internal data structures (25+ types) - Keep tracking for Config and TerminalConfig only (user-facing) - Excludes: Credential, VaultData, HealthReport, CheckResult, etc. - Update baselines to reflect new focused tracking 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager.yml | 43 + .doc-manager/dependencies.json | 2 +- .doc-manager/memory/repo-baseline.json | 4 +- .doc-manager/memory/symbol-baseline.json | 1998 +++++++++++++++++++++- 4 files changed, 2014 insertions(+), 33 deletions(-) diff --git a/.doc-manager.yml b/.doc-manager.yml index bcf365d8..2094e3ab 100644 --- a/.doc-manager.yml +++ b/.doc-manager.yml @@ -29,10 +29,53 @@ api_coverage: strategy: all_then_underscore preset: go-test exclude_symbols: + # Test symbols - "*_test" - "mock*" - "Mock*" + # Internal data structures (not user-facing config) + # Vault/Credential types + - "Credential" + - "VaultData" + - "RecoveryMetadata" + - "UsageRecord" + - "UpdateOpts" + - "CredentialMetadata" + - "usageRecordWithPath" + + # Service types (internal API) + - "KeychainService" + - "CryptoService" + - "VaultService" + + # Health check types + - "HealthReport" + - "CheckResult" + - "HealthSummary" + - "BackupChecker" + - "ConfigChecker" + - "VersionCheckDetails" + - "VaultCheckDetails" + - "ConfigCheckDetails" + - "KeychainCheckDetails" + - "BackupCheckDetails" + - "ConfigError" + - "KeychainEntry" + - "BackupFile" + + # Validation types (internal) + - "ValidationResult" + - "ValidationError" + - "ValidationWarning" + - "Keybinding" + + # Vault operation types + - "KeychainStatus" + - "RemoveVaultResult" + + # Only Config and TerminalConfig are user-facing configuration + # ============================================================================ # Configuration Guide & Examples # ============================================================================ diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json index bbdccb1c..3b657a32 100644 --- a/.doc-manager/dependencies.json +++ b/.doc-manager/dependencies.json @@ -1,5 +1,5 @@ { - "generated_at": "2025-12-03T15:44:16.471148", + "generated_at": "2025-12-03T22:51:30.865354", "doc_to_code": { "01-getting-started/manual-install.md": [ "cmd/init.go", diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json index 72888b4e..b84f6a65 100644 --- a/.doc-manager/memory/repo-baseline.json +++ b/.doc-manager/memory/repo-baseline.json @@ -5,10 +5,10 @@ "docs_exist": true, "docs_path": "docs", "metadata": { - "git_commit": "29447fe9763a2fd54194bd2c1b9374d7187313d7", + "git_commit": "c619ce735651143cb51b6ed27c001faae0f896ff", "git_branch": "docs/review-with-doc-manager" }, - "timestamp": "2025-12-03T15:44:14.634222", + "timestamp": "2025-12-03T22:51:29.247957", "version": "1.0.0", "file_count": 126, "files": { diff --git a/.doc-manager/memory/symbol-baseline.json b/.doc-manager/memory/symbol-baseline.json index 4018a677..4f75d4e5 100644 --- a/.doc-manager/memory/symbol-baseline.json +++ b/.doc-manager/memory/symbol-baseline.json @@ -1,7 +1,7 @@ { - "version": "1.0", + "version": "1.1", "created_at": "2025-11-29T04:31:53.752027+00:00", - "updated_at": "2025-12-03T20:44:14.859700+00:00", + "updated_at": "2025-12-04T03:51:29.511060+00:00", "project_root": "R:\\Test-Projects\\pass-cli", "symbols": { "init": [ @@ -1127,7 +1127,93 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Location", + "parent_symbol": "usageRecordWithPath", + "field_type": "string", + "default_value": null, + "file": "cmd/usage.go", + "line": 62, + "column": 1, + "tags": { + "json": "location" + }, + "is_optional": false, + "doc": null + }, + { + "name": "GitRepo", + "parent_symbol": "usageRecordWithPath", + "field_type": "string", + "default_value": null, + "file": "cmd/usage.go", + "line": 63, + "column": 1, + "tags": { + "json": "git_repository" + }, + "is_optional": false, + "doc": null + }, + { + "name": "PathExists", + "parent_symbol": "usageRecordWithPath", + "field_type": "bool", + "default_value": null, + "file": "cmd/usage.go", + "line": 64, + "column": 1, + "tags": { + "json": "path_exists" + }, + "is_optional": false, + "doc": null + }, + { + "name": "LastAccess", + "parent_symbol": "usageRecordWithPath", + "field_type": "string", + "default_value": null, + "file": "cmd/usage.go", + "line": 65, + "column": 1, + "tags": { + "json": "last_access" + }, + "is_optional": false, + "doc": null + }, + { + "name": "AccessCount", + "parent_symbol": "usageRecordWithPath", + "field_type": "int", + "default_value": null, + "file": "cmd/usage.go", + "line": 66, + "column": 1, + "tags": { + "json": "access_count" + }, + "is_optional": false, + "doc": null + }, + { + "name": "FieldCounts", + "parent_symbol": "usageRecordWithPath", + "field_type": "map[string]int", + "default_value": null, + "file": "cmd/usage.go", + "line": 67, + "column": 1, + "tags": { + "json": "field_counts" + }, + "is_optional": false, + "doc": null + } + ] } ], "runVaultBackupCreate": [ @@ -4139,7 +4225,93 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Terminal", + "parent_symbol": "Config", + "field_type": "TerminalConfig", + "default_value": null, + "file": "internal/config/config.go", + "line": 15, + "column": 1, + "tags": { + "mapstructure": "terminal" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Keybindings", + "parent_symbol": "Config", + "field_type": "map[string]string", + "default_value": null, + "file": "internal/config/config.go", + "line": 16, + "column": 1, + "tags": { + "mapstructure": "keybindings" + }, + "is_optional": false, + "doc": null + }, + { + "name": "VaultPath", + "parent_symbol": "Config", + "field_type": "string", + "default_value": null, + "file": "internal/config/config.go", + "line": 17, + "column": 1, + "tags": { + "mapstructure": "vault_path" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Theme", + "parent_symbol": "Config", + "field_type": "string", + "default_value": null, + "file": "internal/config/config.go", + "line": 18, + "column": 1, + "tags": { + "mapstructure": "theme" + }, + "is_optional": false, + "doc": null + }, + { + "name": "LoadErrors", + "parent_symbol": "Config", + "field_type": "[]string", + "default_value": null, + "file": "internal/config/config.go", + "line": 21, + "column": 1, + "tags": { + "mapstructure": "-" + }, + "is_optional": false, + "doc": null + }, + { + "name": "ParsedKeybindings", + "parent_symbol": "Config", + "field_type": "map[string]*Keybinding", + "default_value": null, + "file": "internal/config/config.go", + "line": 24, + "column": 1, + "tags": { + "mapstructure": "-" + }, + "is_optional": false, + "doc": null + } + ] } ], "TerminalConfig": [ @@ -4151,7 +4323,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "WarningEnabled", + "parent_symbol": "TerminalConfig", + "field_type": "bool", + "default_value": null, + "file": "internal/config/config.go", + "line": 29, + "column": 1, + "tags": { + "mapstructure": "warning_enabled" + }, + "is_optional": false, + "doc": null + }, + { + "name": "MinWidth", + "parent_symbol": "TerminalConfig", + "field_type": "int", + "default_value": null, + "file": "internal/config/config.go", + "line": 30, + "column": 1, + "tags": { + "mapstructure": "min_width" + }, + "is_optional": false, + "doc": null + }, + { + "name": "MinHeight", + "parent_symbol": "TerminalConfig", + "field_type": "int", + "default_value": null, + "file": "internal/config/config.go", + "line": 31, + "column": 1, + "tags": { + "mapstructure": "min_height" + }, + "is_optional": false, + "doc": null + }, + { + "name": "DetailPosition", + "parent_symbol": "TerminalConfig", + "field_type": "string", + "default_value": null, + "file": "internal/config/config.go", + "line": 32, + "column": 1, + "tags": { + "mapstructure": "detail_position" + }, + "is_optional": false, + "doc": null + }, + { + "name": "DetailAutoThreshold", + "parent_symbol": "TerminalConfig", + "field_type": "int", + "default_value": null, + "file": "internal/config/config.go", + "line": 33, + "column": 1, + "tags": { + "mapstructure": "detail_auto_threshold" + }, + "is_optional": false, + "doc": null + } + ] } ], "ValidationResult": [ @@ -4573,7 +4817,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Name", + "parent_symbol": "CheckResult", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 33, + "column": 1, + "tags": { + "json": "name" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Status", + "parent_symbol": "CheckResult", + "field_type": "CheckStatus", + "default_value": null, + "file": "internal/health/checker.go", + "line": 34, + "column": 1, + "tags": { + "json": "status" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Message", + "parent_symbol": "CheckResult", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 35, + "column": 1, + "tags": { + "json": "message" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Recommendation", + "parent_symbol": "CheckResult", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 36, + "column": 1, + "tags": { + "json": "recommendation" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Details", + "parent_symbol": "CheckResult", + "field_type": null, + "default_value": null, + "file": "internal/health/checker.go", + "line": 37, + "column": 1, + "tags": { + "json": "details" + }, + "is_optional": false, + "doc": null + } + ] } ], "HealthSummary": [ @@ -4585,7 +4901,65 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Passed", + "parent_symbol": "HealthSummary", + "field_type": "int", + "default_value": null, + "file": "internal/health/checker.go", + "line": 42, + "column": 1, + "tags": { + "json": "passed" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Warnings", + "parent_symbol": "HealthSummary", + "field_type": "int", + "default_value": null, + "file": "internal/health/checker.go", + "line": 43, + "column": 1, + "tags": { + "json": "warnings" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Errors", + "parent_symbol": "HealthSummary", + "field_type": "int", + "default_value": null, + "file": "internal/health/checker.go", + "line": 44, + "column": 1, + "tags": { + "json": "errors" + }, + "is_optional": false, + "doc": null + }, + { + "name": "ExitCode", + "parent_symbol": "HealthSummary", + "field_type": "int", + "default_value": null, + "file": "internal/health/checker.go", + "line": 45, + "column": 1, + "tags": { + "json": "exit_code" + }, + "is_optional": false, + "doc": null + } + ] } ], "HealthReport": [ @@ -4597,7 +4971,51 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Summary", + "parent_symbol": "HealthReport", + "field_type": "HealthSummary", + "default_value": null, + "file": "internal/health/checker.go", + "line": 50, + "column": 1, + "tags": { + "json": "summary" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Checks", + "parent_symbol": "HealthReport", + "field_type": "[]CheckResult", + "default_value": null, + "file": "internal/health/checker.go", + "line": 51, + "column": 1, + "tags": { + "json": "checks" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Timestamp", + "parent_symbol": "HealthReport", + "field_type": "time.Time", + "default_value": null, + "file": "internal/health/checker.go", + "line": 52, + "column": 1, + "tags": { + "json": "timestamp" + }, + "is_optional": false, + "doc": null + } + ] } ], "CheckOptions": [ @@ -4609,7 +5027,81 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "CurrentVersion", + "parent_symbol": "CheckOptions", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 57, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "GitHubRepo", + "parent_symbol": "CheckOptions", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 58, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "VaultPath", + "parent_symbol": "CheckOptions", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 59, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "VaultPathSource", + "parent_symbol": "CheckOptions", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 60, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "VaultDir", + "parent_symbol": "CheckOptions", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 61, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "ConfigPath", + "parent_symbol": "CheckOptions", + "field_type": "string", + "default_value": null, + "file": "internal/health/checker.go", + "line": 62, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + } + ] } ], "NewConfigChecker": [ @@ -4777,7 +5269,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Current", + "parent_symbol": "VersionCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 7, + "column": 1, + "tags": { + "json": "current" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Latest", + "parent_symbol": "VersionCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 8, + "column": 1, + "tags": { + "json": "latest" + }, + "is_optional": false, + "doc": null + }, + { + "name": "UpdateURL", + "parent_symbol": "VersionCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 9, + "column": 1, + "tags": { + "json": "update_url" + }, + "is_optional": false, + "doc": null + }, + { + "name": "UpToDate", + "parent_symbol": "VersionCheckDetails", + "field_type": "bool", + "default_value": null, + "file": "internal/health/types.go", + "line": 10, + "column": 1, + "tags": { + "json": "up_to_date" + }, + "is_optional": false, + "doc": null + }, + { + "name": "CheckError", + "parent_symbol": "VersionCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 11, + "column": 1, + "tags": { + "json": "check_error" + }, + "is_optional": false, + "doc": null + } + ] } ], "VaultCheckDetails": [ @@ -4789,7 +5353,93 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Path", + "parent_symbol": "VaultCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 16, + "column": 1, + "tags": { + "json": "path" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Exists", + "parent_symbol": "VaultCheckDetails", + "field_type": "bool", + "default_value": null, + "file": "internal/health/types.go", + "line": 17, + "column": 1, + "tags": { + "json": "exists" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Readable", + "parent_symbol": "VaultCheckDetails", + "field_type": "bool", + "default_value": null, + "file": "internal/health/types.go", + "line": 18, + "column": 1, + "tags": { + "json": "readable" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Size", + "parent_symbol": "VaultCheckDetails", + "field_type": "int64", + "default_value": null, + "file": "internal/health/types.go", + "line": 19, + "column": 1, + "tags": { + "json": "size" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Permissions", + "parent_symbol": "VaultCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 20, + "column": 1, + "tags": { + "json": "permissions" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Error", + "parent_symbol": "VaultCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 21, + "column": 1, + "tags": { + "json": "error" + }, + "is_optional": false, + "doc": null + } + ] } ], "ConfigCheckDetails": [ @@ -4801,7 +5451,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Path", + "parent_symbol": "ConfigCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 26, + "column": 1, + "tags": { + "json": "path" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Exists", + "parent_symbol": "ConfigCheckDetails", + "field_type": "bool", + "default_value": null, + "file": "internal/health/types.go", + "line": 27, + "column": 1, + "tags": { + "json": "exists" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Valid", + "parent_symbol": "ConfigCheckDetails", + "field_type": "bool", + "default_value": null, + "file": "internal/health/types.go", + "line": 28, + "column": 1, + "tags": { + "json": "valid" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Errors", + "parent_symbol": "ConfigCheckDetails", + "field_type": "[]ConfigError", + "default_value": null, + "file": "internal/health/types.go", + "line": 29, + "column": 1, + "tags": { + "json": "errors" + }, + "is_optional": false, + "doc": null + }, + { + "name": "UnknownKeys", + "parent_symbol": "ConfigCheckDetails", + "field_type": "[]string", + "default_value": null, + "file": "internal/health/types.go", + "line": 30, + "column": 1, + "tags": { + "json": "unknown_keys" + }, + "is_optional": false, + "doc": null + } + ] } ], "ConfigError": [ @@ -4813,7 +5535,65 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Key", + "parent_symbol": "ConfigError", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 35, + "column": 1, + "tags": { + "json": "key" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Problem", + "parent_symbol": "ConfigError", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 36, + "column": 1, + "tags": { + "json": "problem" + }, + "is_optional": false, + "doc": null + }, + { + "name": "CurrentValue", + "parent_symbol": "ConfigError", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 37, + "column": 1, + "tags": { + "json": "current" + }, + "is_optional": false, + "doc": null + }, + { + "name": "ExpectedValue", + "parent_symbol": "ConfigError", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 38, + "column": 1, + "tags": { + "json": "expected" + }, + "is_optional": false, + "doc": null + } + ] } ], "KeychainCheckDetails": [ @@ -4825,7 +5605,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Available", + "parent_symbol": "KeychainCheckDetails", + "field_type": "bool", + "default_value": null, + "file": "internal/health/types.go", + "line": 43, + "column": 1, + "tags": { + "json": "available" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Backend", + "parent_symbol": "KeychainCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 44, + "column": 1, + "tags": { + "json": "backend" + }, + "is_optional": false, + "doc": null + }, + { + "name": "CurrentVault", + "parent_symbol": "KeychainCheckDetails", + "field_type": "*KeychainEntry", + "default_value": null, + "file": "internal/health/types.go", + "line": 45, + "column": 1, + "tags": { + "json": "current_vault" + }, + "is_optional": false, + "doc": null + }, + { + "name": "OrphanedEntries", + "parent_symbol": "KeychainCheckDetails", + "field_type": "[]KeychainEntry", + "default_value": null, + "file": "internal/health/types.go", + "line": 46, + "column": 1, + "tags": { + "json": "orphaned_entries" + }, + "is_optional": false, + "doc": null + }, + { + "name": "AccessError", + "parent_symbol": "KeychainCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 47, + "column": 1, + "tags": { + "json": "access_error" + }, + "is_optional": false, + "doc": null + } + ] } ], "KeychainEntry": [ @@ -4837,7 +5689,51 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Key", + "parent_symbol": "KeychainEntry", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 52, + "column": 1, + "tags": { + "json": "key" + }, + "is_optional": false, + "doc": null + }, + { + "name": "VaultPath", + "parent_symbol": "KeychainEntry", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 53, + "column": 1, + "tags": { + "json": "vault_path" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Exists", + "parent_symbol": "KeychainEntry", + "field_type": "bool", + "default_value": null, + "file": "internal/health/types.go", + "line": 54, + "column": 1, + "tags": { + "json": "exists" + }, + "is_optional": false, + "doc": null + } + ] } ], "BackupCheckDetails": [ @@ -4849,7 +5745,51 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "VaultDir", + "parent_symbol": "BackupCheckDetails", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 59, + "column": 1, + "tags": { + "json": "vault_dir" + }, + "is_optional": false, + "doc": null + }, + { + "name": "BackupFiles", + "parent_symbol": "BackupCheckDetails", + "field_type": "[]BackupFile", + "default_value": null, + "file": "internal/health/types.go", + "line": 60, + "column": 1, + "tags": { + "json": "backup_files" + }, + "is_optional": false, + "doc": null + }, + { + "name": "OldBackups", + "parent_symbol": "BackupCheckDetails", + "field_type": "int", + "default_value": null, + "file": "internal/health/types.go", + "line": 61, + "column": 1, + "tags": { + "json": "old_backups" + }, + "is_optional": false, + "doc": null + } + ] } ], "BackupFile": [ @@ -4861,7 +5801,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Path", + "parent_symbol": "BackupFile", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 66, + "column": 1, + "tags": { + "json": "path" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Size", + "parent_symbol": "BackupFile", + "field_type": "int64", + "default_value": null, + "file": "internal/health/types.go", + "line": 67, + "column": 1, + "tags": { + "json": "size" + }, + "is_optional": false, + "doc": null + }, + { + "name": "ModifiedAt", + "parent_symbol": "BackupFile", + "field_type": "time.Time", + "default_value": null, + "file": "internal/health/types.go", + "line": 68, + "column": 1, + "tags": { + "json": "modified_at" + }, + "is_optional": false, + "doc": null + }, + { + "name": "AgeHours", + "parent_symbol": "BackupFile", + "field_type": "float64", + "default_value": null, + "file": "internal/health/types.go", + "line": 69, + "column": 1, + "tags": { + "json": "age_hours" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Status", + "parent_symbol": "BackupFile", + "field_type": "string", + "default_value": null, + "file": "internal/health/types.go", + "line": 70, + "column": 1, + "tags": { + "json": "status" + }, + "is_optional": false, + "doc": null + } + ] } ], "NewVaultChecker": [ @@ -5243,7 +6255,33 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Passphrase", + "parent_symbol": "SetupConfig", + "field_type": "[]byte", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 17, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "KDFParams", + "parent_symbol": "SetupConfig", + "field_type": "*vault.KDFParams", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 18, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + } + ] } ], "SetupResult": [ @@ -5267,7 +6305,45 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "ChallengeWords", + "parent_symbol": "RecoveryConfig", + "field_type": "[]string", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 30, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "Passphrase", + "parent_symbol": "RecoveryConfig", + "field_type": "[]byte", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 31, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "Metadata", + "parent_symbol": "RecoveryConfig", + "field_type": "*vault.RecoveryMetadata", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 32, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + } + ] } ], "VerifyConfig": [ @@ -5279,7 +6355,45 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Mnemonic", + "parent_symbol": "VerifyConfig", + "field_type": "string", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 37, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "VerifyPositions", + "parent_symbol": "VerifyConfig", + "field_type": "[]int", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 38, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "UserWords", + "parent_symbol": "VerifyConfig", + "field_type": "[]string", + "default_value": null, + "file": "internal/recovery/recovery.go", + "line": 39, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + } + ] } ], "GetOrCreateAuditKey": [ @@ -5387,7 +6501,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Timestamp", + "parent_symbol": "AuditLogEntry", + "field_type": "time.Time", + "default_value": null, + "file": "internal/security/audit.go", + "line": 19, + "column": 1, + "tags": { + "json": "timestamp" + }, + "is_optional": false, + "doc": null + }, + { + "name": "EventType", + "parent_symbol": "AuditLogEntry", + "field_type": "string", + "default_value": null, + "file": "internal/security/audit.go", + "line": 20, + "column": 1, + "tags": { + "json": "event_type" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Outcome", + "parent_symbol": "AuditLogEntry", + "field_type": "string", + "default_value": null, + "file": "internal/security/audit.go", + "line": 21, + "column": 1, + "tags": { + "json": "outcome" + }, + "is_optional": false, + "doc": null + }, + { + "name": "CredentialName", + "parent_symbol": "AuditLogEntry", + "field_type": "string", + "default_value": null, + "file": "internal/security/audit.go", + "line": 22, + "column": 1, + "tags": { + "json": "credential_name" + }, + "is_optional": false, + "doc": null + }, + { + "name": "HMACSignature", + "parent_symbol": "AuditLogEntry", + "field_type": "[]byte", + "default_value": null, + "file": "internal/security/audit.go", + "line": 23, + "column": 1, + "tags": { + "json": "hmac_signature" + }, + "is_optional": false, + "doc": null + } + ] } ], "AuditLogger": [ @@ -6259,7 +7445,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Version", + "parent_symbol": "VaultMetadata", + "field_type": "int", + "default_value": null, + "file": "internal/storage/storage.go", + "line": 36, + "column": 1, + "tags": { + "json": "version" + }, + "is_optional": false, + "doc": null + }, + { + "name": "CreatedAt", + "parent_symbol": "VaultMetadata", + "field_type": "time.Time", + "default_value": null, + "file": "internal/storage/storage.go", + "line": 37, + "column": 1, + "tags": { + "json": "created_at" + }, + "is_optional": false, + "doc": null + }, + { + "name": "UpdatedAt", + "parent_symbol": "VaultMetadata", + "field_type": "time.Time", + "default_value": null, + "file": "internal/storage/storage.go", + "line": 38, + "column": 1, + "tags": { + "json": "updated_at" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Salt", + "parent_symbol": "VaultMetadata", + "field_type": "[]byte", + "default_value": null, + "file": "internal/storage/storage.go", + "line": 39, + "column": 1, + "tags": { + "json": "salt" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Iterations", + "parent_symbol": "VaultMetadata", + "field_type": "int", + "default_value": null, + "file": "internal/storage/storage.go", + "line": 40, + "column": 1, + "tags": { + "json": "iterations" + }, + "is_optional": false, + "doc": null + } + ] } ], "EncryptedVault": [ @@ -6271,7 +7529,37 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Metadata", + "parent_symbol": "EncryptedVault", + "field_type": "VaultMetadata", + "default_value": null, + "file": "internal/storage/storage.go", + "line": 44, + "column": 1, + "tags": { + "json": "metadata" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Data", + "parent_symbol": "EncryptedVault", + "field_type": "[]byte", + "default_value": null, + "file": "internal/storage/storage.go", + "line": 45, + "column": 1, + "tags": { + "json": "data" + }, + "is_optional": false, + "doc": null + } + ] } ], "StorageService": [ @@ -6463,7 +7751,57 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "VaultPath", + "parent_symbol": "GuidedInitConfig", + "field_type": "string", + "default_value": null, + "file": "internal/vault/firstrun.go", + "line": 37, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "EnableKeychain", + "parent_symbol": "GuidedInitConfig", + "field_type": "bool", + "default_value": null, + "file": "internal/vault/firstrun.go", + "line": 38, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "EnableAuditLog", + "parent_symbol": "GuidedInitConfig", + "field_type": "bool", + "default_value": null, + "file": "internal/vault/firstrun.go", + "line": 39, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + }, + { + "name": "MasterPassword", + "parent_symbol": "GuidedInitConfig", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/firstrun.go", + "line": 40, + "column": 1, + "tags": null, + "is_optional": false, + "doc": null + } + ] } ], "MetadataPath": [ @@ -6553,7 +7891,93 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Version", + "parent_symbol": "Metadata", + "field_type": "string", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 12, + "column": 1, + "tags": { + "json": "version" + }, + "is_optional": false, + "doc": null + }, + { + "name": "CreatedAt", + "parent_symbol": "Metadata", + "field_type": "time.Time", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 13, + "column": 1, + "tags": { + "json": "created_at" + }, + "is_optional": false, + "doc": null + }, + { + "name": "LastModified", + "parent_symbol": "Metadata", + "field_type": "time.Time", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 14, + "column": 1, + "tags": { + "json": "last_modified" + }, + "is_optional": false, + "doc": null + }, + { + "name": "KeychainEnabled", + "parent_symbol": "Metadata", + "field_type": "bool", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 15, + "column": 1, + "tags": { + "json": "keychain_enabled" + }, + "is_optional": false, + "doc": null + }, + { + "name": "AuditEnabled", + "parent_symbol": "Metadata", + "field_type": "bool", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 16, + "column": 1, + "tags": { + "json": "audit_enabled" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Recovery", + "parent_symbol": "Metadata", + "field_type": "*RecoveryMetadata", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 17, + "column": 1, + "tags": { + "json": "recovery,omitempty" + }, + "is_optional": true, + "doc": null + } + ] } ], "RecoveryMetadata": [ @@ -6565,7 +7989,135 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Enabled", + "parent_symbol": "RecoveryMetadata", + "field_type": "bool", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 22, + "column": 1, + "tags": { + "json": "enabled" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Version", + "parent_symbol": "RecoveryMetadata", + "field_type": "string", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 23, + "column": 1, + "tags": { + "json": "version" + }, + "is_optional": false, + "doc": null + }, + { + "name": "PassphraseRequired", + "parent_symbol": "RecoveryMetadata", + "field_type": "bool", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 24, + "column": 1, + "tags": { + "json": "passphrase_required" + }, + "is_optional": false, + "doc": null + }, + { + "name": "ChallengePositions", + "parent_symbol": "RecoveryMetadata", + "field_type": "[]int", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 25, + "column": 1, + "tags": { + "json": "challenge_positions" + }, + "is_optional": false, + "doc": null + }, + { + "name": "KDFParams", + "parent_symbol": "RecoveryMetadata", + "field_type": "KDFParams", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 26, + "column": 1, + "tags": { + "json": "kdf_params" + }, + "is_optional": false, + "doc": null + }, + { + "name": "EncryptedStoredWords", + "parent_symbol": "RecoveryMetadata", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 27, + "column": 1, + "tags": { + "json": "encrypted_stored_words" + }, + "is_optional": false, + "doc": null + }, + { + "name": "NonceStored", + "parent_symbol": "RecoveryMetadata", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 28, + "column": 1, + "tags": { + "json": "nonce_stored" + }, + "is_optional": false, + "doc": null + }, + { + "name": "EncryptedRecoveryKey", + "parent_symbol": "RecoveryMetadata", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 29, + "column": 1, + "tags": { + "json": "encrypted_recovery_key" + }, + "is_optional": false, + "doc": null + }, + { + "name": "NonceRecovery", + "parent_symbol": "RecoveryMetadata", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 30, + "column": 1, + "tags": { + "json": "nonce_recovery" + }, + "is_optional": false, + "doc": null + } + ] } ], "KDFParams": [ @@ -6577,7 +8129,93 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Algorithm", + "parent_symbol": "KDFParams", + "field_type": "string", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 35, + "column": 1, + "tags": { + "json": "algorithm" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Time", + "parent_symbol": "KDFParams", + "field_type": "uint32", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 36, + "column": 1, + "tags": { + "json": "time" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Memory", + "parent_symbol": "KDFParams", + "field_type": "uint32", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 37, + "column": 1, + "tags": { + "json": "memory" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Threads", + "parent_symbol": "KDFParams", + "field_type": "uint8", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 38, + "column": 1, + "tags": { + "json": "threads" + }, + "is_optional": false, + "doc": null + }, + { + "name": "SaltChallenge", + "parent_symbol": "KDFParams", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 39, + "column": 1, + "tags": { + "json": "salt_challenge" + }, + "is_optional": false, + "doc": null + }, + { + "name": "SaltRecovery", + "parent_symbol": "KDFParams", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/metadata.go", + "line": 40, + "column": 1, + "tags": { + "json": "salt_recovery" + }, + "is_optional": false, + "doc": null + } + ] } ], "GetStorageService": [ @@ -6889,7 +8527,93 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Location", + "parent_symbol": "UsageRecord", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 54, + "column": 1, + "tags": { + "json": "location" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Timestamp", + "parent_symbol": "UsageRecord", + "field_type": "time.Time", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 55, + "column": 1, + "tags": { + "json": "timestamp" + }, + "is_optional": false, + "doc": null + }, + { + "name": "GitRepo", + "parent_symbol": "UsageRecord", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 56, + "column": 1, + "tags": { + "json": "git_repo" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Count", + "parent_symbol": "UsageRecord", + "field_type": "int", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 57, + "column": 1, + "tags": { + "json": "count" + }, + "is_optional": false, + "doc": null + }, + { + "name": "LineNumber", + "parent_symbol": "UsageRecord", + "field_type": "int", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 58, + "column": 1, + "tags": { + "json": "line_number,omitempty" + }, + "is_optional": true, + "doc": null + }, + { + "name": "FieldAccess", + "parent_symbol": "UsageRecord", + "field_type": "map[string]int", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 59, + "column": 1, + "tags": { + "json": "field_access" + }, + "is_optional": false, + "doc": null + } + ] } ], "Credential": [ @@ -6901,7 +8625,149 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Service", + "parent_symbol": "Credential", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 65, + "column": 1, + "tags": { + "json": "service" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Username", + "parent_symbol": "Credential", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 66, + "column": 1, + "tags": { + "json": "username" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Password", + "parent_symbol": "Credential", + "field_type": "[]byte", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 67, + "column": 1, + "tags": { + "json": "password" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Category", + "parent_symbol": "Credential", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 68, + "column": 1, + "tags": { + "json": "category,omitempty" + }, + "is_optional": true, + "doc": null + }, + { + "name": "URL", + "parent_symbol": "Credential", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 69, + "column": 1, + "tags": { + "json": "url,omitempty" + }, + "is_optional": true, + "doc": null + }, + { + "name": "Notes", + "parent_symbol": "Credential", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 70, + "column": 1, + "tags": { + "json": "notes" + }, + "is_optional": false, + "doc": null + }, + { + "name": "CreatedAt", + "parent_symbol": "Credential", + "field_type": "time.Time", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 71, + "column": 1, + "tags": { + "json": "created_at" + }, + "is_optional": false, + "doc": null + }, + { + "name": "UpdatedAt", + "parent_symbol": "Credential", + "field_type": "time.Time", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 72, + "column": 1, + "tags": { + "json": "updated_at" + }, + "is_optional": false, + "doc": null + }, + { + "name": "ModifiedCount", + "parent_symbol": "Credential", + "field_type": "int", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 73, + "column": 1, + "tags": { + "json": "modified_count" + }, + "is_optional": false, + "doc": null + }, + { + "name": "UsageRecord", + "parent_symbol": "Credential", + "field_type": "map[string]UsageRecord", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 74, + "column": 1, + "tags": { + "json": "usage_records" + }, + "is_optional": false, + "doc": null + } + ] } ], "VaultData": [ @@ -6913,7 +8779,79 @@ "column": 0, "signature": null, "parent": null, - "doc": null + "doc": null, + "config_fields": [ + { + "name": "Credentials", + "parent_symbol": "VaultData", + "field_type": "map[string]Credential", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 79, + "column": 1, + "tags": { + "json": "credentials" + }, + "is_optional": false, + "doc": null + }, + { + "name": "Version", + "parent_symbol": "VaultData", + "field_type": "int", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 80, + "column": 1, + "tags": { + "json": "version" + }, + "is_optional": false, + "doc": null + }, + { + "name": "AuditEnabled", + "parent_symbol": "VaultData", + "field_type": "bool", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 82, + "column": 1, + "tags": { + "json": "audit_enabled,omitempty" + }, + "is_optional": true, + "doc": null + }, + { + "name": "AuditLogPath", + "parent_symbol": "VaultData", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 83, + "column": 1, + "tags": { + "json": "audit_log_path,omitempty" + }, + "is_optional": true, + "doc": null + }, + { + "name": "VaultID", + "parent_symbol": "VaultData", + "field_type": "string", + "default_value": null, + "file": "internal/vault/vault.go", + "line": 84, + "column": 1, + "tags": { + "json": "vault_id,omitempty" + }, + "is_optional": true, + "doc": null + } + ] } ], "UpdateOpts": [ From 5cf2e71082841e06103816c0707cc0886f0fbf27 Mon Sep 17 00:00:00 2001 From: Ari Date: Wed, 3 Dec 2025 23:04:07 -0500 Subject: [PATCH 14/19] docs: remediate deprecated content, heading case, and duplicates MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - migration.md: Remove invalid --config flag references, update version refs from "January 2025" to "v0.3.0", condense unimplemented migrate command documentation - recovery-phrase.md: Fix --config flag usage in test recovery example - command-reference.md: Fix 2 sentence-case headings to Title Case - README.md: Remove duplicate "Getting Help" section - Update doc-manager baselines 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager/dependencies.json | 30 ++++-------- .doc-manager/memory/repo-baseline.json | 12 ++--- .doc-manager/memory/symbol-baseline.json | 2 +- docs/02-guides/recovery-phrase.md | 21 +++++---- docs/03-reference/command-reference.md | 4 +- docs/03-reference/migration.md | 58 +++++++++--------------- docs/README.md | 6 --- 7 files changed, 52 insertions(+), 81 deletions(-) diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json index 3b657a32..8c650464 100644 --- a/.doc-manager/dependencies.json +++ b/.doc-manager/dependencies.json @@ -1,5 +1,5 @@ { - "generated_at": "2025-12-03T22:51:30.865354", + "generated_at": "2025-12-03T23:03:27.912688", "doc_to_code": { "01-getting-started/manual-install.md": [ "cmd/init.go", @@ -830,9 +830,6 @@ "migration": [ "03-reference/migration.md" ], - "planned": [ - "03-reference/migration.md" - ], "pass-cli add service1": [ "03-reference/migration.md" ], @@ -845,6 +842,9 @@ "pass-cli get service1": [ "03-reference/migration.md" ], + "pass-cli add newservice": [ + "03-reference/migration.md" + ], "pass-cli get oldservice": [ "03-reference/migration.md" ], @@ -1492,9 +1492,6 @@ "migration": [ "03-reference/migration.md" ], - "planned": [ - "03-reference/migration.md" - ], "pass-cli add service1": [ "03-reference/migration.md" ], @@ -1507,6 +1504,9 @@ "pass-cli get service1": [ "03-reference/migration.md" ], + "pass-cli add newservice": [ + "03-reference/migration.md" + ], "pass-cli get oldservice": [ "03-reference/migration.md" ], @@ -3156,19 +3156,11 @@ "doc_file": "03-reference/migration.md" }, { - "reference": "pass-cli migrate", - "doc_file": "03-reference/migration.md" - }, - { - "reference": "pass-cli migrate", - "doc_file": "03-reference/migration.md" - }, - { - "reference": "pass-cli", + "reference": "pass-cli init", "doc_file": "03-reference/migration.md" }, { - "reference": "pass-cli", + "reference": "pass-cli add newservice", "doc_file": "03-reference/migration.md" }, { @@ -3749,10 +3741,6 @@ "reference": "migration", "doc_file": "03-reference/migration.md" }, - { - "reference": "planned", - "doc_file": "03-reference/migration.md" - }, { "reference": "change-password", "doc_file": "04-troubleshooting/faq.md" diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json index b84f6a65..e498e79f 100644 --- a/.doc-manager/memory/repo-baseline.json +++ b/.doc-manager/memory/repo-baseline.json @@ -5,10 +5,10 @@ "docs_exist": true, "docs_path": "docs", "metadata": { - "git_commit": "c619ce735651143cb51b6ed27c001faae0f896ff", + "git_commit": "69dae8f7b467ad433422703da464103450ae9696", "git_branch": "docs/review-with-doc-manager" }, - "timestamp": "2025-12-03T22:51:29.247957", + "timestamp": "2025-12-03T23:03:25.562639", "version": "1.0.0", "file_count": 126, "files": { @@ -61,7 +61,7 @@ "cmd/tui/models/search.go": "baf4867219d8f1a6d2851a25240ef00de14a961ece1ef91693f0afe9204a3b99", "cmd/tui/models/state.go": "2dcff4b9218d00025b0ee7b3e2f876dd21b14ce34eef6f9ba77d4012e1e2ec59", "cmd/tui/styles/theme.go": "5713de3928333c8161eabebd093f61cd8d1a92c504c10913f2fbdae07444e398", - "docs/README.md": "419f41600e8b9469527c9d90751fd8c79a09b5d698fe53e645539f808da9b6cd", + "docs/README.md": "62bebc6ea89210206dbf62e2badfcc38fbbacc15432daf7a6fd3d1be471f3df5", "docs/_index.md": "018b6dcec4fd9db3d98657d1a5b4dcb94367a3d0ce6e2b2248dbca1198940fc7", "docs/01-getting-started/manual-install.md": "19f4d5fa7b358cb989c7d1855acbc13a5c59912d11da1116f64e02cd8c9e3209", "docs/01-getting-started/quick-install.md": "776259dee84c9e2f074a590b79b2c484e64bdd5f977cce016dbf3df77d899b5e", @@ -71,15 +71,15 @@ "docs/02-guides/backup-restore.md": "96a9f8bed3561f9ba36b2d8041c86a263b185ca536e11a0d2f5416df41235308", "docs/02-guides/basic-workflows.md": "12b41a6ddec42e4b9a5027167e2a6b8b98bcd746d5a2e6c0c2d3a49aa0e5a1b8", "docs/02-guides/keychain-setup.md": "27e2499dab96d5cf776be1ea585cb378b2db80d7d44c21bb8820d2ca73ff0980", - "docs/02-guides/recovery-phrase.md": "35dd31c9f3b4d043f0058626f8c7307d66b1886b9b3c34fc65d9c7352ff70c1b", + "docs/02-guides/recovery-phrase.md": "7c3c31c85a2774aa8055b00c26fbc708732a12ed4c1bb342c20b748d963cd36b", "docs/02-guides/scripting-guide.md": "9996c8f7dd8a102a2091cf975d57dcf73edf6638e3be13e47db98e3f6fd61a93", "docs/02-guides/tui-guide.md": "e5837f5368e3fad5a2ae359a071b8d6cee7bc6cc1950fc0d0d4060694d32c457", "docs/02-guides/usage-tracking.md": "4ba15ce03bc86f33db7e4e6f0613c3a7984f6a5ce247c7318acf26e6783e68ed", "docs/02-guides/_index.md": "c6dd48a1975eda4610622424ba76f710bf05f94fe0a6bebe418addab4313ab06", - "docs/03-reference/command-reference.md": "457d1cdcb0022d00b3a475cd757c0361f76207ebda43562295fac0573a90b9b1", + "docs/03-reference/command-reference.md": "c620e1abf223d74b78d8212925e44c2e986bb7d8c5b375f9375a06e33e666256", "docs/03-reference/configuration.md": "c10573f971340d1c69730d09119b59fb6d7e95d376ac648cd407644288278b71", "docs/03-reference/known-limitations.md": "cf6fc6396a8fb23a71da49b3703010c1c1a1158c36d16377539c9aa51dda396e", - "docs/03-reference/migration.md": "96f44ddfe4b6b896b15220661c3f51144e54970365a74d2ce02ca6324415b5ba", + "docs/03-reference/migration.md": "82ef6d02b767aa288c5ef586f81553af2e264aa2e3b463ba33d73e59565acb09", "docs/03-reference/security-architecture.md": "498365fbd9e7368c4afb1ddc84746e0bd86ed4da4af9b7c54c45800dc7c58241", "docs/03-reference/_index.md": "7f4375eb417603299a10f5b5514efec9375ecf0dbe5aac25bd10cb8d4d962703", "docs/04-troubleshooting/faq.md": "0f7a67ba120e9649473b0308ce1e5fb4260b4a90eb77382f00fa8557cf4b31ff", diff --git a/.doc-manager/memory/symbol-baseline.json b/.doc-manager/memory/symbol-baseline.json index 4f75d4e5..6ae93326 100644 --- a/.doc-manager/memory/symbol-baseline.json +++ b/.doc-manager/memory/symbol-baseline.json @@ -1,7 +1,7 @@ { "version": "1.1", "created_at": "2025-11-29T04:31:53.752027+00:00", - "updated_at": "2025-12-04T03:51:29.511060+00:00", + "updated_at": "2025-12-04T04:03:25.906988+00:00", "project_root": "R:\\Test-Projects\\pass-cli", "symbols": { "init": [ diff --git a/docs/02-guides/recovery-phrase.md b/docs/02-guides/recovery-phrase.md index 907e8f3f..5e9bf7c0 100644 --- a/docs/02-guides/recovery-phrase.md +++ b/docs/02-guides/recovery-phrase.md @@ -216,14 +216,19 @@ After writing down your recovery phrase: 2. **Store phrase securely** before testing recovery 3. **Optional**: Test recovery in safe environment: ```bash - # Create test vault - pass-cli init --config /tmp/test-config.yaml - - # Test recovery - pass-cli change-password --recover --config /tmp/test-config.yaml - - # Clean up test vault - rm -rf /tmp/test-config.yaml ~/.pass-cli/vault.enc + # Backup existing config (if any) + cp ~/.pass-cli/config.yml ~/.pass-cli/config.yml.backup 2>/dev/null + + # Point to temporary test vault + echo "vault_path: /tmp/test-vault.enc" > ~/.pass-cli/config.yml + + # Create test vault and test recovery + pass-cli init + pass-cli change-password --recover + + # Restore original config and clean up + mv ~/.pass-cli/config.yml.backup ~/.pass-cli/config.yml 2>/dev/null || rm ~/.pass-cli/config.yml + rm -f /tmp/test-vault.enc ``` ## Advanced: Passphrase Protection diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index 6b5049b1..0a4b63bf 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -1521,7 +1521,7 @@ Overall Status: HEALTHY See [Health Checks](../05-operations/health-checks) for detailed documentation and troubleshooting. -#### Why does doctor report orphaned keychain entries? +#### Why Does Doctor Report Orphaned Keychain Entries? **Symptom**: Doctor reports "⚠ Keychain: Orphaned entry detected" @@ -1574,7 +1574,7 @@ security delete-generic-password -s "pass-cli" -a "$USER" secret-tool clear service pass-cli vault /old/path/vault.enc ``` -#### What if first-run detection doesn't trigger? +#### What If First-Run Detection Doesn't Trigger? **Expected Behavior**: When running vault-requiring commands (`add`, `get`, `list`, `update`, `delete`) for the first time without an existing vault, pass-cli offers guided initialization. diff --git a/docs/03-reference/migration.md b/docs/03-reference/migration.md index 43799aa7..ab1851d5 100644 --- a/docs/03-reference/migration.md +++ b/docs/03-reference/migration.md @@ -198,26 +198,9 @@ pass-cli get github **Time Required**: ~5-10 minutes for 20 credentials. -### Option B: In-Place Migration (Future Feature) +### Option B: In-Place Migration (Planned) -> **[WARNING] WARNING**: This feature is **NOT YET IMPLEMENTED**. The `pass-cli migrate` command does not currently exist. Use Option A (Manual Migration) instead. - -**Status**: Not yet implemented. Planned for future release. - -**Planned Command** (for future reference only): -```bash -# Future: Migrate vault to 600k iterations in-place -pass-cli migrate --iterations 600000 - -# Future: Migrate with audit logging enabled -pass-cli migrate --iterations 600000 --enable-audit -``` - -**Expected Behavior**: -- Reads existing vault with current iteration count -- Re-encrypts all credentials with 600k iterations -- Creates backup automatically -- Atomic operation (rollback on failure) +> **Note**: An automated `pass-cli migrate` command is planned for a future release. Until then, use Option A (Fresh Vault) or Option C (Hybrid Approach). ### Option C: Hybrid Approach (Keep Old Vault) @@ -225,37 +208,38 @@ pass-cli migrate --iterations 600000 --enable-audit **Steps**: -1. **Create new vault in custom location**: +1. **Create new vault in separate location**: ```bash - # Create config for new vault - mkdir -p ~/.pass-cli - echo "vault_path: ~/.pass-cli/vault-new.enc" > ~/.pass-cli/config-new.yml + # Backup current config + cp ~/.pass-cli/config.yml ~/.pass-cli/config.yml.backup + + # Point config to new vault location + echo "vault_path: ~/.pass-cli/vault-new.enc" > ~/.pass-cli/config.yml - # Initialize new vault - pass-cli --config ~/.pass-cli/config-new.yml init --enable-audit + # Initialize new vault (uses 600k iterations) + pass-cli init --enable-audit ``` 2. **Add new credentials to new vault**: ```bash - pass-cli --config ~/.pass-cli/config-new.yml add newservice + pass-cli add newservice ``` -3. **Keep old vault for existing credentials**: +3. **Switch back to old vault when needed**: ```bash - # Use default config (points to ~/.pass-cli/vault.enc) + # Restore original config to access old vault + cp ~/.pass-cli/config.yml.backup ~/.pass-cli/config.yml pass-cli get oldservice ``` -4. **Switch to new vault when ready**: +4. **Promote new vault when ready**: ```bash - # Backup old vault - mv ~/.pass-cli/vault.enc ~/.pass-cli/vault-old-backup.enc + # Point config back to new vault + echo "vault_path: ~/.pass-cli/vault-new.enc" > ~/.pass-cli/config.yml - # Promote new vault to default + # Or rename new vault to default location mv ~/.pass-cli/vault-new.enc ~/.pass-cli/vault.enc - - # Update default config (or remove custom config file) - rm ~/.pass-cli/config-new.yml + rm ~/.pass-cli/config.yml # Use default location ``` ## Backward Compatibility @@ -269,7 +253,7 @@ pass-cli migrate --iterations 600000 --enable-audit - [OK] Can be used alongside 600k vaults **600k Iteration Vaults**: -- [WARNING] **Not compatible with older Pass-CLI versions** (pre-January 2025) +- [WARNING] **Not compatible with Pass-CLI versions before v0.3.0** - [OK] Auto-detected by iteration count in metadata - [OK] Future-proof format @@ -413,7 +397,7 @@ Time includes manual re-entry of credentials. Future in-place migration will be ### Q: Will Old Pass-CLI Versions Work With Migrated Vaults? -**A**: No. 600k iteration vaults require January 2025+ Pass-CLI versions. Keep old vault backup if you need old version compatibility. +**A**: No. 600k iteration vaults require Pass-CLI v0.3.0 or later. Keep old vault backup if you need compatibility with older versions. ### Q: Is There a Tool to Convert Vault Format? diff --git a/docs/README.md b/docs/README.md index 07aa4839..75c30082 100644 --- a/docs/README.md +++ b/docs/README.md @@ -28,12 +28,6 @@ Welcome to the **pass-cli** documentation. pass-cli is a secure, cross-platform - **Audit Logging**: HMAC-signed audit logs for all operations - **Manual Backups**: Create and restore vault backups on demand -## Getting Help - -- **GitHub Issues**: [Report bugs or request features](https://github.com/ari1110/pass-cli/issues) -- **GitHub Discussions**: [Ask questions and share ideas](https://github.com/ari1110/pass-cli/discussions) -- **Documentation**: You're reading it! - ## Contributing See [Contributing Guide](06-development/contributing) for developer documentation and contribution guidelines. From 6c9a694a4a3a384aa2d85af97ffe0a82248660c5 Mon Sep 17 00:00:00 2001 From: Ari Date: Thu, 4 Dec 2025 22:37:27 -0500 Subject: [PATCH 15/19] docs: add doctor and tui commands to command-reference.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add proper ### doctor section with synopsis, flags, examples, exit codes - Add proper ### tui section with synopsis, features, keyboard shortcuts - Clean up malformed orphaned content after verify-audit section - Add Troubleshooting subsection for doctor/tui FAQs - Update doc-manager baselines 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager/dependencies.json | 915 +++-------------------- .doc-manager/memory/repo-baseline.json | 12 +- .doc-manager/memory/symbol-baseline.json | 7 +- docs/03-reference/command-reference.md | 155 ++-- 4 files changed, 247 insertions(+), 842 deletions(-) diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json index 8c650464..dc4eb2f7 100644 --- a/.doc-manager/dependencies.json +++ b/.doc-manager/dependencies.json @@ -1,5 +1,10 @@ { - "generated_at": "2025-12-03T23:03:27.912688", + "_meta": { + "generated_by": "doc-manager-mcp", + "tool_version": "1.2.2", + "warning": "AUTO-GENERATED FILE - Do not edit manually. Changes will be overwritten by doc-manager." + }, + "generated_at": "2025-12-04T22:36:51.415742", "doc_to_code": { "01-getting-started/manual-install.md": [ "cmd/init.go", @@ -94,6 +99,22 @@ "cmd/keychain_enable.go", "cmd/keychain_status.go", "cmd/list.go", + "cmd/tui.go", + "cmd/tui/app.go", + "cmd/tui/components/detail.go", + "cmd/tui/components/forms.go", + "cmd/tui/components/sidebar.go", + "cmd/tui/components/statusbar.go", + "cmd/tui/components/table.go", + "cmd/tui/events/focus.go", + "cmd/tui/events/handlers.go", + "cmd/tui/layout/manager.go", + "cmd/tui/layout/pages.go", + "cmd/tui/main.go", + "cmd/tui/models/navigation.go", + "cmd/tui/models/search.go", + "cmd/tui/models/state.go", + "cmd/tui/styles/theme.go", "cmd/update.go", "cmd/usage.go", "cmd/vault.go", @@ -297,651 +318,127 @@ "cmd/tui.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/app.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/components/detail.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/components/forms.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/components/sidebar.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/components/statusbar.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/components/table.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/events/focus.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/events/handlers.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/layout/manager.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/layout/pages.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/main.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/models/navigation.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/models/search.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "cmd/tui/models/state.go": [ "02-guides/basic-workflows.md", "02-guides/keychain-setup.md", - "04-troubleshooting/tui.md" - ], - "cmd/tui/styles/theme.go": [ - "02-guides/basic-workflows.md", - "02-guides/keychain-setup.md", - "04-troubleshooting/tui.md" - ], - "cmd/config.go": [ - "03-reference/command-reference.md" - ], - "cmd/keychain.go": [ - "03-reference/command-reference.md" - ], - "cmd/usage.go": [ - "03-reference/command-reference.md" - ], - "cmd/vault.go": [ - "03-reference/command-reference.md" - ], - "cmd/vault_backup.go": [ - "03-reference/command-reference.md" - ], - "cmd/vault_remove.go": [ - "03-reference/command-reference.md", - "README.md" - ], - "cmd/root.go": [ - "06-development/contributing.md" - ] - }, - "unmatched_references": { - "checksums.txt": [ - "01-getting-started/manual-install.md", - "06-development/scoop.md" - ], - "pass-cli": [ - "01-getting-started/manual-install.md", - "02-guides/tui-guide.md", - "03-reference/command-reference.md", - "03-reference/migration.md", - "04-troubleshooting/tui.md", - "06-development/homebrew.md", - "README.md" - ], - "explicit": [ - "01-getting-started/manual-install.md", - "02-guides/tui-guide.md" - ], - "pass-cli version": [ - "01-getting-started/manual-install.md", - "01-getting-started/quick-install.md", - "01-getting-started/quick-start.md", - "03-reference/command-reference.md", - "04-troubleshooting/installation.md", - "05-operations/security-operations.md", - "06-development/homebrew.md", - "06-development/scoop.md" - ], - "pass-cli init": [ - "01-getting-started/manual-install.md", - "01-getting-started/quick-start.md", - "02-guides/recovery-phrase.md", - "03-reference/command-reference.md", - "03-reference/migration.md", - "03-reference/security-architecture.md", - "04-troubleshooting/installation.md", - "04-troubleshooting/keychain.md", - "04-troubleshooting/vault.md", - "05-operations/health-checks.md", - "05-operations/security-operations.md", - "README.md" - ], - "pass-cli add test # Add a test credential": [ - "01-getting-started/manual-install.md" - ], - "pass-cli get test # Retrieve it": [ - "01-getting-started/manual-install.md" - ], - "pass-cli delete test": [ - "01-getting-started/manual-install.md" - ], - "vault_path": [ - "01-getting-started/quick-start.md", - "02-guides/scripting-guide.md", - "03-reference/configuration.md", - "03-reference/migration.md", - "05-operations/health-checks.md" - ], - "pass-cli list": [ - "01-getting-started/quick-start.md", - "02-guides/basic-workflows.md", - "02-guides/scripting-guide.md", - "02-guides/usage-tracking.md", - "03-reference/command-reference.md", - "03-reference/migration.md", - "04-troubleshooting/faq.md", - "04-troubleshooting/installation.md", - "04-troubleshooting/tui.md", - "04-troubleshooting/vault.md", - "05-operations/security-operations.md", - "README.md" - ], - "pass-cli add github": [ - "01-getting-started/quick-start.md", - "02-guides/backup-restore.md", - "02-guides/basic-workflows.md", - "03-reference/command-reference.md", - "03-reference/migration.md", - "README.md" - ], - "vault-requiring": [ - "01-getting-started/quick-start.md", - "03-reference/command-reference.md" - ], - "pass-cli get github": [ - "01-getting-started/quick-start.md", - "02-guides/basic-workflows.md", - "02-guides/scripting-guide.md", - "02-guides/tui-guide.md", - "03-reference/command-reference.md", - "03-reference/migration.md", - "04-troubleshooting/tui.md", - "README.md" - ], - "vault.enc.backup": [ - "02-guides/backup-restore.md", - "03-reference/command-reference.md", - "03-reference/security-architecture.md", - "04-troubleshooting/vault.md" - ], - "pass-cli vault backup info": [ - "02-guides/backup-restore.md", - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli vault backup create": [ - "02-guides/backup-restore.md", - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli doctor": [ - "02-guides/backup-restore.md", - "02-guides/basic-workflows.md", - "02-guides/keychain-setup.md", - "03-reference/command-reference.md", - "05-operations/health-checks.md", - "README.md" - ], - "restore": [ - "02-guides/backup-restore.md" - ], - "info": [ - "02-guides/backup-restore.md" - ], - "pass-cli vault backup restore": [ - "02-guides/backup-restore.md", - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli generate": [ - "02-guides/basic-workflows.md", - "03-reference/command-reference.md", - "03-reference/migration.md", - "05-operations/security-operations.md", - "README.md" - ], - "pass-cli generate --length": [ - "02-guides/basic-workflows.md" - ], - "pass-cli add github -u": [ - "02-guides/basic-workflows.md" - ], - "pass-cli update github --generate": [ - "02-guides/basic-workflows.md" - ], - "pass-cli update github --generate --gen-length": [ - "02-guides/basic-workflows.md" - ], - "pass-cli keychain enable": [ - "02-guides/basic-workflows.md", - "02-guides/keychain-setup.md", - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli keychain status": [ - "02-guides/basic-workflows.md", - "02-guides/keychain-setup.md", - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli get github --json": [ - "02-guides/basic-workflows.md" - ], - "pass-cli update github": [ - "02-guides/basic-workflows.md", - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli delete github": [ - "02-guides/basic-workflows.md", - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli tui # Opens directly, no password prompt": [ - "02-guides/basic-workflows.md", - "02-guides/keychain-setup.md" - ], - "use": [ - "02-guides/keychain-setup.md" - ], - "recovery": [ - "02-guides/recovery-phrase.md", - "03-reference/command-reference.md" - ], - "pass-cli change-password": [ - "02-guides/recovery-phrase.md", - "03-reference/command-reference.md", - "03-reference/security-architecture.md", - "04-troubleshooting/faq.md", - "04-troubleshooting/vault.md", - "README.md" - ], - "in": [ - "02-guides/scripting-guide.md" - ], - "pass-cli add service": [ - "02-guides/scripting-guide.md" - ], - "pass-cli update testservice": [ - "02-guides/scripting-guide.md" - ], - "Tab": [ - "02-guides/tui-guide.md" - ], - "Enter": [ - "02-guides/tui-guide.md" - ], - "Esc": [ - "02-guides/tui-guide.md", - "04-troubleshooting/tui.md" - ], - "pass-cli get": [ - "02-guides/tui-guide.md", - "03-reference/command-reference.md", - "04-troubleshooting/tui.md" - ], - "detail_position": [ - "02-guides/tui-guide.md" - ], - "detail_auto_threshold": [ - "02-guides/tui-guide.md" - ], - "no": [ - "02-guides/tui-guide.md" - ], - "pass-cli # Opens interactive interface": [ - "02-guides/tui-guide.md" - ], - "pass-cli list # Outputs credential table to stdout": [ - "02-guides/tui-guide.md" - ], - "pass-cli add newcred # Interactive prompts for credential data": [ - "02-guides/tui-guide.md" - ], - "pass-cli list --by-project": [ - "02-guides/usage-tracking.md" - ], - "pass-cli get testservice": [ - "02-guides/usage-tracking.md" - ], - "pass-cli usage github": [ - "02-guides/usage-tracking.md", - "03-reference/command-reference.md" - ], - "pass-cli usage aws-prod": [ - "02-guides/usage-tracking.md" - ], - "cli": [ - "03-reference/_index.md", - "README.md" - ], - "MyPassword": [ - "03-reference/command-reference.md" - ], - "pass-cli change-password --recover": [ - "03-reference/command-reference.md", - "03-reference/migration.md", - "03-reference/security-architecture.md", - "04-troubleshooting/vault.md", - "README.md" - ], - "EDITOR": [ - "03-reference/command-reference.md" - ], - "pass-cli init --enable-audit": [ - "03-reference/command-reference.md", - "README.md" - ], - "pass-cli get github --quiet": [ - "03-reference/command-reference.md" - ], - "pass-cli get github --field": [ - "03-reference/command-reference.md" - ], - "any": [ - "03-reference/command-reference.md" - ], - "each": [ - "03-reference/command-reference.md" - ], - "this": [ - "03-reference/command-reference.md" - ], - "by": [ - "03-reference/command-reference.md" - ], - "windows": [ - "03-reference/command-reference.md" - ], - "pass-cli verify-audit": [ - "03-reference/command-reference.md", - "03-reference/migration.md", - "03-reference/security-architecture.md" - ], - "pass-cli add [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli add github \\": [ - "03-reference/command-reference.md" - ], - "pass-cli get [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli list [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli update [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli update github \\": [ - "03-reference/command-reference.md" - ], - "pass-cli delete [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli change-password [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli generate [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli version [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli usage [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli usage aws": [ - "03-reference/command-reference.md" - ], - "pass-cli usage postgres": [ - "03-reference/command-reference.md" - ], - "pass-cli usage heroku": [ - "03-reference/command-reference.md" - ], - "pass-cli usage redis": [ - "03-reference/command-reference.md" - ], - "pass-cli config ": [ - "03-reference/command-reference.md" - ], - "pass-cli config init": [ - "03-reference/command-reference.md", - "03-reference/configuration.md" - ], - "pass-cli config edit": [ - "03-reference/command-reference.md", - "03-reference/configuration.md" - ], - "pass-cli config validate": [ - "03-reference/command-reference.md", - "03-reference/configuration.md" - ], - "pass-cli config reset [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli config reset": [ - "03-reference/command-reference.md", - "03-reference/configuration.md" - ], - "pass-cli keychain ": [ - "03-reference/command-reference.md" - ], - "pass-cli keychain enable [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli keychain status [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli vault ": [ - "03-reference/command-reference.md" - ], - "pass-cli vault remove [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli vault remove /path/to/vault.enc": [ - "03-reference/command-reference.md" - ], - "pass-cli vault backup ": [ - "03-reference/command-reference.md" - ], - "pass-cli vault backup create [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli vault backup restore [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli vault backup info [flags]": [ - "03-reference/command-reference.md" - ], - "pass-cli verify-audit [audit-log-path]": [ - "03-reference/command-reference.md" - ], - "pass-cli verify-audit /path/to/audit.log": [ - "03-reference/command-reference.md" - ], - "pass-cli help": [ - "03-reference/command-reference.md" - ], - "add_credential": [ - "03-reference/configuration.md" - ], - "edit_credential": [ - "03-reference/configuration.md" - ], - "delete_credential": [ - "03-reference/configuration.md" - ], - "toggle_detail": [ - "03-reference/configuration.md" - ], - "toggle_sidebar": [ - "03-reference/configuration.md" - ], - "InputField": [ - "03-reference/known-limitations.md" - ], - "pass-cli init # CLI mode": [ - "03-reference/known-limitations.md" - ], - "pass-cli # TUI mode": [ - "03-reference/known-limitations.md" - ], - "pass-cli migrate": [ - "03-reference/migration.md" - ], - "every": [ - "03-reference/migration.md" - ], - "migration": [ - "03-reference/migration.md" - ], - "pass-cli add service1": [ - "03-reference/migration.md" - ], - "pass-cli add service2": [ - "03-reference/migration.md" - ], - "pass-cli generate # Copy generated password": [ - "03-reference/migration.md" - ], - "pass-cli get service1": [ - "03-reference/migration.md" - ], - "pass-cli add newservice": [ - "03-reference/migration.md" - ], - "pass-cli get oldservice": [ - "03-reference/migration.md" - ], - "pass-cli generate # Automatically meets policy requirements": [ - "03-reference/migration.md" - ], - "CryptGenRandom": [ - "03-reference/security-architecture.md" - ], - "vault.enc": [ - "03-reference/security-architecture.md", - "04-troubleshooting/vault.md" - ], - "change-password": [ - "04-troubleshooting/faq.md" - ], - "Backspace": [ - "04-troubleshooting/tui.md" - ], - "of": [ - "04-troubleshooting/tui.md" - ], - "pass-cli tui": [ - "04-troubleshooting/tui.md" - ], - "pass-cli # No arguments": [ - "04-troubleshooting/tui.md" - ], - "pass-cli list # This is CLI mode": [ - "04-troubleshooting/tui.md" - ], - "complete": [ - "05-operations/health-checks.md", - "_index.md", - "README.md" - ], - "pass-cli doctor [flags]": [ - "05-operations/health-checks.md" - ], - "pass-cli doctor # Show details": [ - "05-operations/health-checks.md" - ], - "pass-cli update service": [ - "05-operations/security-operations.md" - ], - "pass-cli get service --json": [ - "05-operations/security-operations.md" - ], - "pass-cli delete old-service": [ - "05-operations/security-operations.md" - ], - "Lint": [ - "06-development/branch-workflow.md" - ], - "Build": [ - "06-development/branch-workflow.md" - ], - "common": [ - "06-development/branch-workflow.md", - "06-development/contributing.md" - ], - "contents": [ - "06-development/ci-cd.md" + "03-reference/command-reference.md", + "04-troubleshooting/tui.md" ], - "packages": [ - "06-development/ci-cd.md" + "cmd/tui/styles/theme.go": [ + "02-guides/basic-workflows.md", + "02-guides/keychain-setup.md", + "03-reference/command-reference.md", + "04-troubleshooting/tui.md" ], - "cobra": [ - "06-development/contributing.md" + "cmd/config.go": [ + "03-reference/command-reference.md" ], - "docs": [ - "06-development/documentation-lifecycle.md" + "cmd/keychain.go": [ + "03-reference/command-reference.md" ], - "pass-cli --help": [ - "06-development/scoop.md" + "cmd/usage.go": [ + "03-reference/command-reference.md" ], - "pass-cli init --no-recovery": [ - "README.md" + "cmd/vault.go": [ + "03-reference/command-reference.md" ], - "cross-platform": [ - "README.md" + "cmd/vault_backup.go": [ + "03-reference/command-reference.md" ], - "core": [ + "cmd/vault_remove.go": [ + "03-reference/command-reference.md", "README.md" ], - "pass-cli vault remove": [ - "README.md" + "cmd/root.go": [ + "06-development/contributing.md" ] }, - "reference_to_doc": { + "unmatched_references": { "checksums.txt": [ "01-getting-started/manual-install.md", "06-development/scoop.md" ], - "grep": [ - "01-getting-started/manual-install.md" - ], "pass-cli": [ "01-getting-started/manual-install.md", "02-guides/tui-guide.md", @@ -988,27 +485,6 @@ "pass-cli delete test": [ "01-getting-started/manual-install.md" ], - "add": [ - "01-getting-started/quick-start.md", - "03-reference/command-reference.md", - "06-development/contributing.md" - ], - "get": [ - "01-getting-started/quick-start.md", - "03-reference/command-reference.md" - ], - "list": [ - "01-getting-started/quick-start.md", - "03-reference/command-reference.md" - ], - "update": [ - "01-getting-started/quick-start.md", - "03-reference/command-reference.md" - ], - "delete": [ - "01-getting-started/quick-start.md", - "03-reference/command-reference.md" - ], "vault_path": [ "01-getting-started/quick-start.md", "02-guides/scripting-guide.md", @@ -1016,22 +492,6 @@ "03-reference/migration.md", "05-operations/health-checks.md" ], - "version": [ - "01-getting-started/quick-start.md" - ], - "doctor": [ - "01-getting-started/quick-start.md", - "05-operations/health-checks.md", - "README.md" - ], - "help": [ - "01-getting-started/quick-start.md", - "03-reference/configuration.md" - ], - "init": [ - "01-getting-started/quick-start.md", - "06-development/contributing.md" - ], "pass-cli list": [ "01-getting-started/quick-start.md", "02-guides/basic-workflows.md", @@ -1046,9 +506,6 @@ "05-operations/security-operations.md", "README.md" ], - "echo": [ - "01-getting-started/quick-start.md" - ], "pass-cli add github": [ "01-getting-started/quick-start.md", "02-guides/backup-restore.md", @@ -1077,9 +534,6 @@ "03-reference/security-architecture.md", "04-troubleshooting/vault.md" ], - "info": [ - "02-guides/backup-restore.md" - ], "pass-cli vault backup info": [ "02-guides/backup-restore.md", "03-reference/command-reference.md", @@ -1101,18 +555,14 @@ "restore": [ "02-guides/backup-restore.md" ], + "info": [ + "02-guides/backup-restore.md" + ], "pass-cli vault backup restore": [ "02-guides/backup-restore.md", "03-reference/command-reference.md", "README.md" ], - "secret-tool clear service pass-cli": [ - "02-guides/basic-workflows.md" - ], - "jq": [ - "02-guides/basic-workflows.md", - "05-operations/health-checks.md" - ], "pass-cli generate": [ "02-guides/basic-workflows.md", "03-reference/command-reference.md", @@ -1164,9 +614,6 @@ "use": [ "02-guides/keychain-setup.md" ], - "change-password --recover": [ - "02-guides/recovery-phrase.md" - ], "recovery": [ "02-guides/recovery-phrase.md", "03-reference/command-reference.md" @@ -1192,10 +639,12 @@ "02-guides/tui-guide.md" ], "Enter": [ - "02-guides/tui-guide.md" + "02-guides/tui-guide.md", + "03-reference/command-reference.md" ], "Esc": [ "02-guides/tui-guide.md", + "03-reference/command-reference.md", "04-troubleshooting/tui.md" ], "pass-cli get": [ @@ -1206,20 +655,12 @@ "detail_position": [ "02-guides/tui-guide.md" ], - "auto": [ - "02-guides/tui-guide.md" - ], - "right": [ - "02-guides/tui-guide.md" - ], - "bottom": [ - "02-guides/tui-guide.md" - ], "detail_auto_threshold": [ "02-guides/tui-guide.md" ], "no": [ - "02-guides/tui-guide.md" + "02-guides/tui-guide.md", + "03-reference/command-reference.md" ], "pass-cli # Opens interactive interface": [ "02-guides/tui-guide.md" @@ -1247,9 +688,6 @@ "03-reference/_index.md", "README.md" ], - "password123": [ - "03-reference/command-reference.md" - ], "MyPassword": [ "03-reference/command-reference.md" ], @@ -1260,57 +698,9 @@ "04-troubleshooting/vault.md", "README.md" ], - "username": [ - "03-reference/command-reference.md" - ], - "password": [ - "03-reference/command-reference.md" - ], - "url": [ - "03-reference/command-reference.md" - ], - "notes": [ - "03-reference/command-reference.md" - ], - "service": [ - "03-reference/command-reference.md" - ], - "created": [ - "03-reference/command-reference.md" - ], - "modified": [ - "03-reference/command-reference.md" - ], - "accessed": [ - "03-reference/command-reference.md" - ], - "gen": [ - "03-reference/command-reference.md" - ], - "pwd": [ - "03-reference/command-reference.md" - ], - "a-z": [ - "03-reference/command-reference.md" - ], - "table": [ - "03-reference/command-reference.md" - ], - "json": [ - "03-reference/command-reference.md" - ], - "simple": [ - "03-reference/command-reference.md" - ], - "config reset": [ - "03-reference/command-reference.md" - ], "EDITOR": [ "03-reference/command-reference.md" ], - "audit-log-path": [ - "03-reference/command-reference.md" - ], "pass-cli init --enable-audit": [ "03-reference/command-reference.md", "README.md" @@ -1333,9 +723,6 @@ "by": [ "03-reference/command-reference.md" ], - "windows": [ - "03-reference/command-reference.md" - ], "pass-cli verify-audit": [ "03-reference/command-reference.md", "03-reference/migration.md", @@ -1444,11 +831,19 @@ "pass-cli verify-audit /path/to/audit.log": [ "03-reference/command-reference.md" ], - "pass-cli help": [ + "pass-cli doctor [flags]": [ + "03-reference/command-reference.md", + "05-operations/health-checks.md" + ], + "pass-cli tui": [ + "03-reference/command-reference.md", + "04-troubleshooting/tui.md" + ], + "pass-cli # Also launches TUI when no command specified": [ "03-reference/command-reference.md" ], - "quit": [ - "03-reference/configuration.md" + "pass-cli help": [ + "03-reference/command-reference.md" ], "add_credential": [ "03-reference/configuration.md" @@ -1465,18 +860,9 @@ "toggle_sidebar": [ "03-reference/configuration.md" ], - "search": [ - "03-reference/configuration.md" - ], "InputField": [ "03-reference/known-limitations.md" ], - "string": [ - "03-reference/known-limitations.md" - ], - "defer": [ - "03-reference/known-limitations.md" - ], "pass-cli init # CLI mode": [ "03-reference/known-limitations.md" ], @@ -1516,9 +902,6 @@ "CryptGenRandom": [ "03-reference/security-architecture.md" ], - "fsync": [ - "03-reference/security-architecture.md" - ], "vault.enc": [ "03-reference/security-architecture.md", "04-troubleshooting/vault.md" @@ -1532,35 +915,17 @@ "of": [ "04-troubleshooting/tui.md" ], - "pass-cli tui": [ - "04-troubleshooting/tui.md" - ], "pass-cli # No arguments": [ "04-troubleshooting/tui.md" ], "pass-cli list # This is CLI mode": [ "04-troubleshooting/tui.md" ], - "libsecret": [ - "05-operations/health-checks.md" - ], - "apt-get install libsecret-1-0": [ - "05-operations/health-checks.md" - ], - "keyring": [ - "05-operations/health-checks.md" - ], - "gnome-keyring": [ - "05-operations/health-checks.md" - ], "complete": [ "05-operations/health-checks.md", "_index.md", "README.md" ], - "pass-cli doctor [flags]": [ - "05-operations/health-checks.md" - ], "pass-cli doctor # Show details": [ "05-operations/health-checks.md" ], @@ -1570,113 +935,37 @@ "pass-cli get service --json": [ "05-operations/security-operations.md" ], - "history -c": [ - "05-operations/security-operations.md" - ], "pass-cli delete old-service": [ "05-operations/security-operations.md" ], - "main": [ - "06-development/branch-workflow.md", - "06-development/ci-cd.md" - ], "Lint": [ "06-development/branch-workflow.md" ], "Build": [ "06-development/branch-workflow.md" ], - ".github/workflows/release.yml": [ - "06-development/branch-workflow.md", - "06-development/release.md" - ], - ".github/workflows/ci.yml": [ - "06-development/branch-workflow.md" - ], "common": [ "06-development/branch-workflow.md", "06-development/contributing.md" ], - "ci.yml": [ - "06-development/ci-cd.md" - ], - "release.yml": [ - "06-development/ci-cd.md" - ], - ".github/dependabot.yml": [ - "06-development/ci-cd.md" - ], "contents": [ "06-development/ci-cd.md" ], "packages": [ "06-development/ci-cd.md" ], - "go vet": [ - "06-development/contributing.md" - ], - "gofmt": [ - "06-development/contributing.md" - ], "cobra": [ "06-development/contributing.md" ], - "root": [ - "06-development/contributing.md" - ], - "git log --follow": [ - "06-development/documentation-lifecycle.md" - ], "docs": [ "06-development/documentation-lifecycle.md" ], - "homebrew/pass-cli.rb": [ - "06-development/homebrew.md" - ], - "Formula/pass-cli.rb": [ - "06-development/homebrew.md" - ], - "latest": [ - "06-development/homebrew.md", - "06-development/scoop.md" - ], - "brew test pass-cli": [ - "06-development/homebrew.md" - ], - "update-docs-version.yml": [ - "06-development/release.md" - ], - "netgo": [ - "06-development/release.md" - ], - ".goreleaser.yml": [ - "06-development/release.md", - "06-development/scoop.md" - ], - "scoop/pass-cli.json": [ - "06-development/scoop.md" - ], - "bucket/pass-cli.json": [ - "06-development/scoop.md" - ], - "scoop hash": [ - "06-development/scoop.md" - ], - "scoop checkver pass-cli -u": [ - "06-development/scoop.md" - ], - "scoop checkver pass-cli": [ - "06-development/scoop.md" - ], "pass-cli --help": [ "06-development/scoop.md" ], "pass-cli init --no-recovery": [ "README.md" ], - "pass": [ - "README.md" - ], "cross-platform": [ "README.md" ], @@ -3003,6 +2292,38 @@ "reference": "pass-cli verify-audit /path/to/audit.log", "doc_file": "03-reference/command-reference.md" }, + { + "reference": "pass-cli doctor [flags]", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli doctor", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli tui", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli # Also launches TUI when no command specified", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli tui", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli", + "doc_file": "03-reference/command-reference.md" + }, { "reference": "pass-cli init", "doc_file": "03-reference/command-reference.md" @@ -3722,15 +3043,15 @@ "doc_file": "03-reference/command-reference.md" }, { - "reference": "vault-requiring", + "reference": "no", "doc_file": "03-reference/command-reference.md" }, { - "reference": "get", + "reference": "vault-requiring", "doc_file": "03-reference/command-reference.md" }, { - "reference": "windows", + "reference": "get", "doc_file": "03-reference/command-reference.md" }, { @@ -3847,6 +3168,18 @@ "reference": "EDITOR", "doc_file": "03-reference/command-reference.md" }, + { + "reference": "Tab", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "Enter", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "Esc", + "doc_file": "03-reference/command-reference.md" + }, { "reference": "InputField", "doc_file": "03-reference/known-limitations.md" diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json index e498e79f..61e62bdc 100644 --- a/.doc-manager/memory/repo-baseline.json +++ b/.doc-manager/memory/repo-baseline.json @@ -1,14 +1,18 @@ { + "_meta": { + "generated_by": "doc-manager-mcp", + "tool_version": "1.2.2", + "warning": "AUTO-GENERATED FILE - Do not edit manually. Changes will be overwritten by doc-manager." + }, "repo_name": "pass-cli", "description": "Repository for pass-cli", "language": "Go", "docs_exist": true, - "docs_path": "docs", "metadata": { - "git_commit": "69dae8f7b467ad433422703da464103450ae9696", + "git_commit": "5cf2e71082841e06103816c0707cc0886f0fbf27", "git_branch": "docs/review-with-doc-manager" }, - "timestamp": "2025-12-03T23:03:25.562639", + "timestamp": "2025-12-04T22:36:50.237098", "version": "1.0.0", "file_count": 126, "files": { @@ -76,7 +80,7 @@ "docs/02-guides/tui-guide.md": "e5837f5368e3fad5a2ae359a071b8d6cee7bc6cc1950fc0d0d4060694d32c457", "docs/02-guides/usage-tracking.md": "4ba15ce03bc86f33db7e4e6f0613c3a7984f6a5ce247c7318acf26e6783e68ed", "docs/02-guides/_index.md": "c6dd48a1975eda4610622424ba76f710bf05f94fe0a6bebe418addab4313ab06", - "docs/03-reference/command-reference.md": "c620e1abf223d74b78d8212925e44c2e986bb7d8c5b375f9375a06e33e666256", + "docs/03-reference/command-reference.md": "692c71ab21df3bcb9bafe3c6041c187a70077fb56a2527a7f6da67627566deb5", "docs/03-reference/configuration.md": "c10573f971340d1c69730d09119b59fb6d7e95d376ac648cd407644288278b71", "docs/03-reference/known-limitations.md": "cf6fc6396a8fb23a71da49b3703010c1c1a1158c36d16377539c9aa51dda396e", "docs/03-reference/migration.md": "82ef6d02b767aa288c5ef586f81553af2e264aa2e3b463ba33d73e59565acb09", diff --git a/.doc-manager/memory/symbol-baseline.json b/.doc-manager/memory/symbol-baseline.json index 6ae93326..8577d177 100644 --- a/.doc-manager/memory/symbol-baseline.json +++ b/.doc-manager/memory/symbol-baseline.json @@ -1,7 +1,12 @@ { + "_meta": { + "generated_by": "doc-manager-mcp", + "tool_version": "1.2.2", + "warning": "AUTO-GENERATED FILE - Do not edit manually. Changes will be overwritten by doc-manager." + }, "version": "1.1", "created_at": "2025-11-29T04:31:53.752027+00:00", - "updated_at": "2025-12-04T04:03:25.906988+00:00", + "updated_at": "2025-12-05T03:36:50.414991+00:00", "project_root": "R:\\Test-Projects\\pass-cli", "symbols": { "init": [ diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index 0a4b63bf..9f4a2299 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -1494,32 +1494,119 @@ Review the log file and investigate the flagged entries. --- -**Use Cases:** -- Decommissioning a vault that's no longer needed +### doctor - System Health Check + +Run diagnostic checks on your pass-cli installation. + +#### Synopsis + +```bash +pass-cli doctor [flags] +``` + +#### Description + +Performs comprehensive health checks on your vault, configuration, keychain integration, and backups. Useful for troubleshooting issues or verifying system state. + +**Checks Performed:** +1. **Version Check**: Compares installed version against latest release +2. **Vault Check**: Verifies vault file exists and has correct permissions 3. **Config Check**: Validates configuration syntax and settings 4. **Keychain Check**: Tests OS keychain integration status 5. **Backup Check**: Verifies backup files exist and are accessible -**Exit Codes**: -- `0` = All checks passed (HEALTHY) -- `1` = Warnings detected (review recommended) -- `2` = Errors detected (action required) +#### Flags -**Example Output**: -```text -Health Check Results -==================== +| Flag | Type | Description | +|------|------|-------------| +| `--json` | bool | Output results as JSON | +| `--quiet` | bool | Only show warnings and errors | + +#### Examples + +```bash +# Run all health checks +pass-cli doctor -[PASS] Version: v1.2.3 (up to date) -[PASS] Vault: vault.enc accessible (600 permissions) -[PASS] Config: Valid configuration -[PASS] Keychain: Integration active -[PASS] Backup: 3 backup files found +# Output as JSON (for scripts) +pass-cli doctor --json -Overall Status: HEALTHY +# Show only problems +pass-cli doctor --quiet ``` -See [Health Checks](../05-operations/health-checks) for detailed documentation and troubleshooting. +#### Exit Codes + +| Code | Meaning | +|------|---------| +| 0 | All checks passed (HEALTHY) | +| 1 | Warnings detected (review recommended) | +| 2 | Errors detected (action required) | + +#### See Also + +- [Health Checks Guide](../05-operations/health-checks) - Detailed documentation and troubleshooting + +--- + +### tui - Interactive Terminal Interface + +Launch the interactive terminal user interface. + +#### Synopsis + +```bash +pass-cli tui +pass-cli # Also launches TUI when no command specified +``` + +#### Description + +Opens an interactive terminal interface for browsing and managing credentials. The TUI provides keyboard-driven navigation, search, and credential operations without memorizing CLI commands. + +**Features:** +- Sidebar navigation with credential tree +- Detail panel with credential information +- Search and filter credentials +- Add, edit, and delete credentials +- Copy passwords to clipboard +- Usage statistics display + +#### Flags + +None. + +#### Examples + +```bash +# Launch TUI explicitly +pass-cli tui + +# Launch TUI (default when no command given) +pass-cli +``` + +#### Keyboard Shortcuts + +| Key | Action | +|-----|--------| +| `Tab` | Switch between panels | +| `Enter` | Select/expand item | +| `Esc` | Cancel/go back | +| `/` | Search | +| `a` | Add credential | +| `e` | Edit credential | +| `d` | Delete credential | +| `c` | Copy password | +| `q` | Quit | + +#### See Also + +- [TUI Guide](../02-guides/tui-guide) - Complete TUI documentation and customization + +--- + +### Troubleshooting #### Why Does Doctor Report Orphaned Keychain Entries? @@ -1530,47 +1617,23 @@ See [Health Checks](../05-operations/health-checks) for detailed documentation a - Vault path changed but old keychain entry wasn't cleaned up - Multiple vaults were created and old entries weren't removed -**Impact**: Low - orphaned entries don't affect current vault operations, but clutter the keychain - **Solutions**: -**Option 1: Clean up manually** (macOS): +**macOS**: ```bash -# Open Keychain Access open -a "Keychain Access" - -# Search for "pass-cli" -# Delete old/orphaned entries +# Search for "pass-cli" and delete old entries ``` -**Option 2: Clean up manually** (Windows): +**Windows**: ```powershell -# Open Credential Manager control /name Microsoft.CredentialManager - -# Navigate to "Windows Credentials" -# Remove old "pass-cli" entries +# Navigate to "Windows Credentials" and remove old "pass-cli" entries ``` -**Option 3: Clean up manually** (Linux): +**Linux**: ```bash -# List all pass-cli keychain entries secret-tool search service pass-cli - -# Delete specific entry -secret-tool clear service pass-cli vault /old/path/vault.enc -``` - -**Prevention**: When deleting or moving vaults, remove the keychain entry first using your OS credential manager: - -```bash -# Windows -cmdkey /delete:pass-cli - -# macOS -security delete-generic-password -s "pass-cli" -a "$USER" - -# Linux secret-tool clear service pass-cli vault /old/path/vault.enc ``` From b8364d60dee18bb4bda5ce6f0fb1b37425e26272 Mon Sep 17 00:00:00 2001 From: Ari Date: Thu, 4 Dec 2025 22:56:31 -0500 Subject: [PATCH 16/19] docs: fix CLI documentation gaps and inaccuracies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add missing list flags: --by-project, --location, --recursive - Add missing category field option to get --field - Add missing delete command aliases: rm, remove - Add missing doctor --verbose flag - Fix config reset docs (no --force flag, auto-backup behavior) - Fix version docs (always shows build details, no --verbose flag) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- docs/03-reference/command-reference.md | 73 +++++++++++++------------- 1 file changed, 37 insertions(+), 36 deletions(-) diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index 9f4a2299..5157d638 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -268,6 +268,7 @@ pass-cli get [flags] For `--field` flag: - `username` - User's username - `password` - User's password +- `category` - Credential category - `url` - Service URL - `notes` - Additional notes - `service` - Service name @@ -346,9 +347,12 @@ pass-cli list [flags] | Flag | Type | Description | |------|------|-------------| -| `--format` | string | Output format: table, json, simple (default: table) | +| `--format`, `-f` | string | Output format: table, json, simple (default: table) | | `--unused` | bool | Show only unused credentials | | `--days` | int | Days threshold for unused (default: 30) | +| `--by-project` | bool | Group credentials by git repository | +| `--location` | string | Filter credentials by directory path | +| `--recursive` | bool | Include subdirectories with --location | #### Examples @@ -367,6 +371,21 @@ pass-cli list --unused # Show credentials not used in 90 days pass-cli list --unused --days 90 + +# Group credentials by git repository +pass-cli list --by-project + +# Group by project with JSON output +pass-cli list --by-project --format json + +# Filter by location (current directory) +pass-cli list --location . + +# Filter by location with subdirectories +pass-cli list --location /home/user/projects --recursive + +# Combine location filter with project grouping +pass-cli list --location ~/work --by-project --recursive ``` #### Output Examples @@ -491,6 +510,10 @@ Delete a credential from the vault. pass-cli delete [flags] ``` +#### Aliases + +`rm`, `remove` + #### Flags | Flag | Short | Type | Description | @@ -724,43 +747,27 @@ Default character sets: ### version - Show Version -Display version information. +Display version information including build details. #### Synopsis ```bash -pass-cli version [flags] +pass-cli version ``` -#### Flags - -| Flag | Type | Description | -|------|------|-------------| -| `--verbose` | bool | Show detailed version info | - #### Examples ```bash # Show version pass-cli version - -# Verbose version info -pass-cli version --verbose ``` -#### Output Examples +#### Output -**Default:** ```text -pass-cli version X.Y.Z -``` - -**Verbose:** -```text -pass-cli version X.Y.Z +pass-cli X.Y.Z commit: abc123f built: 2025-01-20T10:30:00Z - go: go1.25.1 ``` --- @@ -1007,32 +1014,22 @@ Reset configuration to default values. **Synopsis:** ```bash -pass-cli config reset [flags] +pass-cli config reset ``` -**Flags:** -| Flag | Type | Description | -|------|------|-------------| -| `--force`, `-f` | bool | Skip confirmation prompt | - **Description:** -Overwrites existing config file with defaults. Requires confirmation unless `--force` flag is used. +Resets the configuration file to default values. Creates a backup of your current config at `.backup` before overwriting. **Examples:** ```bash -# Reset with confirmation +# Reset config to defaults (creates backup automatically) pass-cli config reset - -# Reset without confirmation -pass-cli config reset --force ``` **Output:** ```text -[WARNING] This will overwrite your current configuration. -Are you sure you want to reset to defaults? (y/n): y - -[OK] Configuration reset to defaults: /home/user/.pass-cli/config.yml +Config file backed up to /home/user/.pass-cli/config.yml.backup +Config file reset to defaults at /home/user/.pass-cli/config.yml ``` #### See Also @@ -1521,6 +1518,7 @@ Performs comprehensive health checks on your vault, configuration, keychain inte |------|------|-------------| | `--json` | bool | Output results as JSON | | `--quiet` | bool | Only show warnings and errors | +| `--verbose`, `-v` | bool | Verbose output with detailed check execution | #### Examples @@ -1533,6 +1531,9 @@ pass-cli doctor --json # Show only problems pass-cli doctor --quiet + +# Verbose mode (detailed check execution) +pass-cli doctor --verbose ``` #### Exit Codes From 123e7ccf0e536a5cc8d9dcfd365e6ab060a57333 Mon Sep 17 00:00:00 2001 From: Ari Date: Thu, 4 Dec 2025 23:02:15 -0500 Subject: [PATCH 17/19] docs: replace date references with version numbers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove "January 2025" references from command-reference, security-architecture, configuration, and security-operations docs - Update migration guide to use v0.3.0 instead of "January 2025 release" - Date-based version references are less maintainable than semantic versions 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- docs/03-reference/command-reference.md | 2 +- docs/03-reference/configuration.md | 2 +- docs/03-reference/migration.md | 6 +++--- docs/03-reference/security-architecture.md | 8 ++++---- docs/05-operations/security-operations.md | 2 +- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/03-reference/command-reference.md b/docs/03-reference/command-reference.md index 5157d638..5a16c508 100644 --- a/docs/03-reference/command-reference.md +++ b/docs/03-reference/command-reference.md @@ -71,7 +71,7 @@ pass-cli init | `--use-keychain` | bool | Store master password in OS keychain | | `--no-recovery` | bool | Skip BIP39 recovery phrase generation | -#### Password Policy (January 2025) +#### Password Policy All master passwords must meet complexity requirements: - **Minimum Length**: 12 characters diff --git a/docs/03-reference/configuration.md b/docs/03-reference/configuration.md index bb9efbd4..21c96177 100644 --- a/docs/03-reference/configuration.md +++ b/docs/03-reference/configuration.md @@ -6,7 +6,7 @@ toc: true Complete configuration options for pass-cli including vault location, clipboard settings, TUI theme, and keyboard shortcuts. -**Configuration Location** (added January 2025): +**Configuration Location**: - **All platforms**: `~/.pass-cli/config.yml` **Management Commands**: diff --git a/docs/03-reference/migration.md b/docs/03-reference/migration.md index ab1851d5..788bdbb5 100644 --- a/docs/03-reference/migration.md +++ b/docs/03-reference/migration.md @@ -3,14 +3,14 @@ title: "Migration" weight: 5 toc: true --- -Guide for upgrading Pass-CLI vaults and adapting to security hardening changes (January 2025 release). +Guide for upgrading Pass-CLI vaults and adapting to security hardening changes introduced in v0.3.0. ![Version](https://img.shields.io/github/v/release/ari1110/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/ari1110/pass-cli?path=docs&label=Last%20Updated) ## Overview -The January 2025 security hardening release introduces several important changes: +The v0.3.0 security hardening release introduces several important changes: 1. **Vault Location Configuration**: `--vault` flag removed, use config file instead 2. **Increased PBKDF2 Iterations**: 100,000 → 600,000 (6x stronger) @@ -271,7 +271,7 @@ pass-cli get github ### Cross-Version Compatibility Matrix -| Vault Type | Pass-CLI (Old) | Pass-CLI (Jan 2025) | +| Vault Type | Pass-CLI < v0.3.0 | Pass-CLI v0.3.0+ | |------------|----------------|---------------------| | 100k iterations | [OK] Read/Write | [OK] Read/Write | | 600k iterations | [ERROR] Incompatible | [OK] Read/Write | diff --git a/docs/03-reference/security-architecture.md b/docs/03-reference/security-architecture.md index a0caaaa8..f8b7ad8f 100644 --- a/docs/03-reference/security-architecture.md +++ b/docs/03-reference/security-architecture.md @@ -14,7 +14,7 @@ Pass-CLI is designed with security as the primary concern. All credentials are e ### Key Security Features - **AES-256-GCM Encryption**: Military-grade authenticated encryption -- **PBKDF2 Key Derivation**: 600,000 iterations with SHA-256 (hardened, January 2025) +- **PBKDF2 Key Derivation**: 600,000 iterations with SHA-256 (hardened) - **BIP39 Recovery Phrase**: 24-word mnemonic for vault password recovery (industry-standard) - **System Keychain Integration**: Secure master password storage - **Offline-First Design**: No network calls, no cloud dependencies @@ -49,7 +49,7 @@ Pass-CLI is designed with security as the primary concern. All credentials are e - **Algorithm**: Password-Based Key Derivation Function 2 - **Hash Function**: SHA-256 -- **Iterations**: 600,000 (increased from 100,000 in January 2025) +- **Iterations**: 600,000 (hardened from 100,000) - **Salt Length**: 32 bytes (256 bits) - **Output Length**: 32 bytes (256 bits) - **Implementation**: `golang.org/x/crypto/pbkdf2` @@ -188,7 +188,7 @@ Pass-CLI integrates with your operating system's secure credential storage to sa ### Master Password Requirements -**Since January 2025** - Password policy enforced for both vault and credential passwords: +Password policy enforced for both vault and credential passwords: - **Minimum Length**: 12 characters (enforced) - **Uppercase Letter**: At least one required @@ -354,7 +354,7 @@ chmod 600 ~/backups/vault-*.enc ### Audit Logging (Optional) -**Since January 2025** - Tamper-evident audit trail for vault operations: +Tamper-evident audit trail for vault operations: - **Opt-In**: Disabled by default, enable with `--enable-audit` flag - **HMAC Signatures**: HMAC-SHA256 signatures for tamper detection diff --git a/docs/05-operations/security-operations.md b/docs/05-operations/security-operations.md index 53f6f1d3..d2e82013 100644 --- a/docs/05-operations/security-operations.md +++ b/docs/05-operations/security-operations.md @@ -273,7 +273,7 @@ pass-cli version ### PBKDF2 Parameters -- **Iteration Count**: 600,000 (increased January 2025) +- **Iteration Count**: 600,000 (hardened) - Provides ~50-100ms delay on modern CPUs (2023+) - Older hardware: 500-1000ms (acceptable per NIST recommendations) - Significantly increases brute-force cost From a598898bdcb85e6e1a5a5545af630ddafe7f6040 Mon Sep 17 00:00:00 2001 From: Ari Date: Thu, 4 Dec 2025 23:14:03 -0500 Subject: [PATCH 18/19] docs: remove irrelevant content and symlink README MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Symlink docs/README.md -> _index.md (single source of truth) - Move documentation-lifecycle.md to specs/ (internal governance, not user docs) - Remove GitHub Actions version list from ci-cd.md (stale immediately, check workflows for truth) - Remove "Future Enhancements" wishlist from ci-cd.md (belongs in issue tracker) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- docs/06-development/ci-cd.md | 25 -------------- docs/README.md | 34 +------------------ .../documentation-lifecycle.md | 0 3 files changed, 1 insertion(+), 58 deletions(-) mode change 100644 => 120000 docs/README.md rename {docs/06-development => specs}/documentation-lifecycle.md (100%) diff --git a/docs/06-development/ci-cd.md b/docs/06-development/ci-cd.md index 64f2f2db..aed3b6d9 100644 --- a/docs/06-development/ci-cd.md +++ b/docs/06-development/ci-cd.md @@ -98,20 +98,6 @@ This document describes the automated CI/CD pipeline for Pass-CLI. - Release artifacts retained for 30 days - Coverage reports uploaded to Codecov -### GitHub Actions Versions - -Current action versions in use: - -- **actions/checkout**: v5 -- **actions/setup-go**: v6 -- **actions/upload-artifact**: v4 -- **actions/download-artifact**: v5 -- **codecov/codecov-action**: v5 -- **golangci/golangci-lint-action**: v8 (with golangci-lint v2.5) -- **securego/gosec**: master -- **github/codeql-action/upload-sarif**: v3 -- **goreleaser/goreleaser-action**: v6 - ## Dependabot Integration **Configuration**: `.github/dependabot.yml` @@ -335,17 +321,6 @@ Add to README.md: - Don't commit secrets to repository - Use GitHub Secrets for sensitive data -## Future Enhancements - -Potential workflow improvements: - -- Docker image builds and publishing -- Performance regression testing -- Automated changelog generation -- Slack/Discord notifications -- Deployment to package registries -- Automated documentation deployment - ## See Also - [GoReleaser Documentation](https://goreleaser.com) diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index 75c30082..00000000 --- a/docs/README.md +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: "Pass-CLI Documentation" ---- - -![Version](https://img.shields.io/github/v/release/ari1110/pass-cli?label=Version) ![Last Updated](https://img.shields.io/github/last-commit/ari1110/pass-cli?path=docs&label=Last%20Updated) - -Welcome to the **pass-cli** documentation. pass-cli is a secure, cross-platform CLI password and API key manager designed for developers. - -## Quick Links - -- [Quick Start](01-getting-started/quick-start) - First-time setup and initialization (5 minutes) -- [Quick Install](01-getting-started/quick-install) - Installation instructions for all platforms -- [Command Reference](03-reference/command-reference) - Complete command reference -- [Recovery Phrase](02-guides/recovery-phrase) - BIP39 recovery phrase setup and usage -- [Backup & Restore Guide](02-guides/backup-restore) - Manual vault backup management -- [Security Architecture](03-reference/security-architecture) - Security features and cryptography -- [Troubleshooting](04-troubleshooting/_index) - Common issues and solutions by category - -## Features - -- **Strong Encryption**: AES-256-GCM with PBKDF2 key derivation (600,000 iterations) -- **BIP39 Recovery**: 24-word mnemonic for vault password recovery -- **Cross-Platform**: Works on Windows, macOS, and Linux -- **Keychain Integration**: Optional OS keychain support for automatic unlocking -- **Interactive TUI**: Beautiful terminal UI built with tview -- **Clipboard Support**: Secure clipboard integration with auto-clear -- **Usage Tracking**: Per-credential usage statistics -- **Audit Logging**: HMAC-signed audit logs for all operations -- **Manual Backups**: Create and restore vault backups on demand - -## Contributing - -See [Contributing Guide](06-development/contributing) for developer documentation and contribution guidelines. diff --git a/docs/README.md b/docs/README.md new file mode 120000 index 00000000..9eb48a35 --- /dev/null +++ b/docs/README.md @@ -0,0 +1 @@ +_index.md \ No newline at end of file diff --git a/docs/06-development/documentation-lifecycle.md b/specs/documentation-lifecycle.md similarity index 100% rename from docs/06-development/documentation-lifecycle.md rename to specs/documentation-lifecycle.md From d478df1a04657ec5d62d333efb477a7707e5812f Mon Sep 17 00:00:00 2001 From: Ari Date: Thu, 4 Dec 2025 23:41:22 -0500 Subject: [PATCH 19/19] chore: update doc-manager baselines MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updated baselines after plugin upgrade - now correctly tracking 574 dependencies. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- .doc-manager/dependencies.json | 77 ++++++++++++------------ .doc-manager/memory/repo-baseline.json | 23 ++++--- .doc-manager/memory/symbol-baseline.json | 4 +- 3 files changed, 53 insertions(+), 51 deletions(-) diff --git a/.doc-manager/dependencies.json b/.doc-manager/dependencies.json index dc4eb2f7..f9850949 100644 --- a/.doc-manager/dependencies.json +++ b/.doc-manager/dependencies.json @@ -1,10 +1,10 @@ { "_meta": { "generated_by": "doc-manager-mcp", - "tool_version": "1.2.2", + "tool_version": "1.2.3", "warning": "AUTO-GENERATED FILE - Do not edit manually. Changes will be overwritten by doc-manager." }, - "generated_at": "2025-12-04T22:36:51.415742", + "generated_at": "2025-12-04T23:31:38.303997", "doc_to_code": { "01-getting-started/manual-install.md": [ "cmd/init.go", @@ -189,7 +189,6 @@ "cmd/init.go", "cmd/root.go" ], - "06-development/documentation-lifecycle.md": [], "06-development/homebrew.md": [ "cmd/version.go" ], @@ -755,9 +754,6 @@ "pass-cli generate [flags]": [ "03-reference/command-reference.md" ], - "pass-cli version [flags]": [ - "03-reference/command-reference.md" - ], "pass-cli usage [flags]": [ "03-reference/command-reference.md" ], @@ -788,9 +784,6 @@ "03-reference/command-reference.md", "03-reference/configuration.md" ], - "pass-cli config reset [flags]": [ - "03-reference/command-reference.md" - ], "pass-cli config reset": [ "03-reference/command-reference.md", "03-reference/configuration.md" @@ -957,9 +950,6 @@ "cobra": [ "06-development/contributing.md" ], - "docs": [ - "06-development/documentation-lifecycle.md" - ], "pass-cli --help": [ "06-development/scoop.md" ], @@ -1138,14 +1128,6 @@ "reference": "packages", "doc_file": "06-development/ci-cd.md" }, - { - "reference": "docs", - "doc_file": "06-development/documentation-lifecycle.md" - }, - { - "reference": "docs", - "doc_file": "06-development/documentation-lifecycle.md" - }, { "reference": "checksums.txt", "doc_file": "06-development/scoop.md" @@ -1760,6 +1742,10 @@ "reference": "password", "doc_file": "03-reference/command-reference.md" }, + { + "reference": "category", + "doc_file": "03-reference/command-reference.md" + }, { "reference": "url", "doc_file": "03-reference/command-reference.md" @@ -1784,6 +1770,14 @@ "reference": "accessed", "doc_file": "03-reference/command-reference.md" }, + { + "reference": "rm", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "remove", + "doc_file": "03-reference/command-reference.md" + }, { "reference": "pass-cli init", "doc_file": "03-reference/command-reference.md" @@ -2012,6 +2006,26 @@ "reference": "pass-cli list", "doc_file": "03-reference/command-reference.md" }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, + { + "reference": "pass-cli list", + "doc_file": "03-reference/command-reference.md" + }, { "reference": "pass-cli update [flags]", "doc_file": "03-reference/command-reference.md" @@ -2112,10 +2126,6 @@ "reference": "pass-cli generate", "doc_file": "03-reference/command-reference.md" }, - { - "reference": "pass-cli version [flags]", - "doc_file": "03-reference/command-reference.md" - }, { "reference": "pass-cli version", "doc_file": "03-reference/command-reference.md" @@ -2176,10 +2186,6 @@ "reference": "pass-cli config validate", "doc_file": "03-reference/command-reference.md" }, - { - "reference": "pass-cli config reset [flags]", - "doc_file": "03-reference/command-reference.md" - }, { "reference": "pass-cli config reset", "doc_file": "03-reference/command-reference.md" @@ -2308,6 +2314,10 @@ "reference": "pass-cli doctor", "doc_file": "03-reference/command-reference.md" }, + { + "reference": "pass-cli doctor", + "doc_file": "03-reference/command-reference.md" + }, { "reference": "pass-cli tui", "doc_file": "03-reference/command-reference.md" @@ -2812,10 +2822,6 @@ "reference": "gofmt", "doc_file": "06-development/contributing.md" }, - { - "reference": "git log --follow", - "doc_file": "06-development/documentation-lifecycle.md" - }, { "reference": "latest", "doc_file": "06-development/homebrew.md" @@ -3108,7 +3114,7 @@ }, { "reference": "complete", - "doc_file": "README.md" + "doc_file": "_index.md" }, { "reference": "cross-platform", @@ -3282,7 +3288,6 @@ "06-development/branch-workflow.md", "06-development/ci-cd.md", "06-development/contributing.md", - "06-development/documentation-lifecycle.md", "06-development/homebrew.md", "06-development/release.md", "06-development/scoop.md", @@ -3302,12 +3307,10 @@ "06-development/branch-workflow.md", "06-development/ci-cd.md", "06-development/contributing.md", - "06-development/documentation-lifecycle.md", "06-development/homebrew.md", "06-development/release.md", "06-development/scoop.md", - "_index.md", - "README.md" + "_index.md" ], "https://img.shields.io/github/last-commit/ari1110/pass-cli?label=Last%20Updated": [ "README.md" diff --git a/.doc-manager/memory/repo-baseline.json b/.doc-manager/memory/repo-baseline.json index 61e62bdc..c2ea74b1 100644 --- a/.doc-manager/memory/repo-baseline.json +++ b/.doc-manager/memory/repo-baseline.json @@ -1,7 +1,7 @@ { "_meta": { "generated_by": "doc-manager-mcp", - "tool_version": "1.2.2", + "tool_version": "1.2.3", "warning": "AUTO-GENERATED FILE - Do not edit manually. Changes will be overwritten by doc-manager." }, "repo_name": "pass-cli", @@ -9,12 +9,12 @@ "language": "Go", "docs_exist": true, "metadata": { - "git_commit": "5cf2e71082841e06103816c0707cc0886f0fbf27", + "git_commit": "a598898bdcb85e6e1a5a5545af630ddafe7f6040", "git_branch": "docs/review-with-doc-manager" }, - "timestamp": "2025-12-04T22:36:50.237098", + "timestamp": "2025-12-04T23:31:37.284645", "version": "1.0.0", - "file_count": 126, + "file_count": 125, "files": { "CHANGELOG.md": "d72447f51be5bf54e38a8802bf7db155b85c877555e7e74f07e117b99b91c638", "CLAUDE.md": "2bcc51fedb86dc1c1b0b303dffade31cb68e8727403a94060d7631b5cb656116", @@ -65,7 +65,7 @@ "cmd/tui/models/search.go": "baf4867219d8f1a6d2851a25240ef00de14a961ece1ef91693f0afe9204a3b99", "cmd/tui/models/state.go": "2dcff4b9218d00025b0ee7b3e2f876dd21b14ce34eef6f9ba77d4012e1e2ec59", "cmd/tui/styles/theme.go": "5713de3928333c8161eabebd093f61cd8d1a92c504c10913f2fbdae07444e398", - "docs/README.md": "62bebc6ea89210206dbf62e2badfcc38fbbacc15432daf7a6fd3d1be471f3df5", + "docs/README.md": "018b6dcec4fd9db3d98657d1a5b4dcb94367a3d0ce6e2b2248dbca1198940fc7", "docs/_index.md": "018b6dcec4fd9db3d98657d1a5b4dcb94367a3d0ce6e2b2248dbca1198940fc7", "docs/01-getting-started/manual-install.md": "19f4d5fa7b358cb989c7d1855acbc13a5c59912d11da1116f64e02cd8c9e3209", "docs/01-getting-started/quick-install.md": "776259dee84c9e2f074a590b79b2c484e64bdd5f977cce016dbf3df77d899b5e", @@ -80,11 +80,11 @@ "docs/02-guides/tui-guide.md": "e5837f5368e3fad5a2ae359a071b8d6cee7bc6cc1950fc0d0d4060694d32c457", "docs/02-guides/usage-tracking.md": "4ba15ce03bc86f33db7e4e6f0613c3a7984f6a5ce247c7318acf26e6783e68ed", "docs/02-guides/_index.md": "c6dd48a1975eda4610622424ba76f710bf05f94fe0a6bebe418addab4313ab06", - "docs/03-reference/command-reference.md": "692c71ab21df3bcb9bafe3c6041c187a70077fb56a2527a7f6da67627566deb5", - "docs/03-reference/configuration.md": "c10573f971340d1c69730d09119b59fb6d7e95d376ac648cd407644288278b71", + "docs/03-reference/command-reference.md": "0c5fcfe40886365e3aaddc8d2131dae0ce53a99556dacae23b4b281228d10187", + "docs/03-reference/configuration.md": "2a578290811deb21bc96f971fd36ef455655ae68ad62994016355162e4d72a70", "docs/03-reference/known-limitations.md": "cf6fc6396a8fb23a71da49b3703010c1c1a1158c36d16377539c9aa51dda396e", - "docs/03-reference/migration.md": "82ef6d02b767aa288c5ef586f81553af2e264aa2e3b463ba33d73e59565acb09", - "docs/03-reference/security-architecture.md": "498365fbd9e7368c4afb1ddc84746e0bd86ed4da4af9b7c54c45800dc7c58241", + "docs/03-reference/migration.md": "e3687f502bc64f32d484c5f17935a9c9783467d7781f49514395460d9773ebce", + "docs/03-reference/security-architecture.md": "09f7bebc3971226921af9a7e8003263e16b352847461233103665d2c7c08f69d", "docs/03-reference/_index.md": "7f4375eb417603299a10f5b5514efec9375ecf0dbe5aac25bd10cb8d4d962703", "docs/04-troubleshooting/faq.md": "0f7a67ba120e9649473b0308ce1e5fb4260b4a90eb77382f00fa8557cf4b31ff", "docs/04-troubleshooting/installation.md": "241bb4919f0dfc69c8f7779ba7c9784845c09936a8a477832d423f4f3ce54c60", @@ -93,12 +93,11 @@ "docs/04-troubleshooting/vault.md": "33d278ee3abc27044147b4807ad5f2b56df7e316adc110297058825c0d688add", "docs/04-troubleshooting/_index.md": "c9bed28801a06cf760d45358f8449fb9f73a227efae934cbd76700e335a14b18", "docs/05-operations/health-checks.md": "596732e89ca82eb87138075f54d9ab42872e30259e8aa3e0e468867c3e1e67f0", - "docs/05-operations/security-operations.md": "4f0823dc99fb74ecae7921e11b09166dfc1ee4dc0ad69136838561e71014bbf2", + "docs/05-operations/security-operations.md": "cf9667f96d5f866d36aa2a982b5ffad4afae75b6779a09e6a45a5957c4754ab3", "docs/05-operations/_index.md": "1b243fc3b06e3c9218c76a6fae1ce9fe16c995c9d7fb486a0ad9e3ad8b0f74e1", "docs/06-development/branch-workflow.md": "013ff876608e2015a6a9c2b33fa54303e911e59b23163a5565f6490042366d4a", - "docs/06-development/ci-cd.md": "4c46a06f4b09ac02ffea3c00ab78a69d3ede84128cd8202c01fb3c1673e567b8", + "docs/06-development/ci-cd.md": "08b5d7679bddc6b14aa8c740cf9f320752a72b8cb52b3a03405bfd0db7e29628", "docs/06-development/contributing.md": "11d19bbd1792aaa9162bab01602c43d7faaa08a73921f82d0a17427a785da559", - "docs/06-development/documentation-lifecycle.md": "0fdad2b45406ac401c2b8085aee44521fff5215b76eeb14cb765ea02a80352cd", "docs/06-development/homebrew.md": "6b5cae03d66e72a7cebb88951eaafc8706a078aa3abc799ffd60a3eb5183b54d", "docs/06-development/release.md": "1476afcf264708f5146669ac50aec037f51255cde6f92401e20a50cf1eaaa48d", "docs/06-development/scoop.md": "45da8095cbe0d7a2edf85d2e39ce18de907cffd3dfc562e3fcd5cf640a50aff1", diff --git a/.doc-manager/memory/symbol-baseline.json b/.doc-manager/memory/symbol-baseline.json index 8577d177..8edce47b 100644 --- a/.doc-manager/memory/symbol-baseline.json +++ b/.doc-manager/memory/symbol-baseline.json @@ -1,12 +1,12 @@ { "_meta": { "generated_by": "doc-manager-mcp", - "tool_version": "1.2.2", + "tool_version": "1.2.3", "warning": "AUTO-GENERATED FILE - Do not edit manually. Changes will be overwritten by doc-manager." }, "version": "1.1", "created_at": "2025-11-29T04:31:53.752027+00:00", - "updated_at": "2025-12-05T03:36:50.414991+00:00", + "updated_at": "2025-12-05T04:31:37.393216+00:00", "project_root": "R:\\Test-Projects\\pass-cli", "symbols": { "init": [