oh-my-second-brain 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +41 -0
- package/{adapters/claude-code/.claude-plugin → .claude-plugin}/plugin.json +7 -8
- package/{adapters/codex/.codex-plugin → .codex-plugin}/plugin.json +4 -4
- package/ACKNOWLEDGMENTS.md +154 -0
- package/CHANGELOG-assets.md +19 -0
- package/CHANGELOG-cli.md +15 -0
- package/CHANGELOG-kernel.md +25 -0
- package/CHANGELOG-mcp.md +26 -0
- package/CHANGELOG-vendors.md +22 -0
- package/CHANGELOG.md +24 -7
- package/README.ko.md +2 -2
- package/README.md +16 -16
- package/{adapters/claude-code → assets/claude}/CLAUDE.md +4 -4
- package/{adapters → assets}/codex/AGENTS.md +3 -3
- package/{adapters → assets}/codex/rules/oms.md +5 -5
- package/{adapters → assets}/hermes/README.md +1 -1
- package/{adapters → assets}/hermes/SOUL.md +3 -3
- package/{adapters/hermes/manifest.json → assets/hermes-manifest.json} +3 -4
- package/assets/skills/distill/SKILL.md +20 -0
- package/assets/skills/doctor/SKILL.md +23 -0
- package/assets/skills/link/SKILL.md +24 -0
- package/assets/skills/search/SKILL.md +25 -0
- package/assets/skills/status/SKILL.md +22 -0
- package/assets/skills/write/SKILL.md +30 -0
- package/core/ontology/schemas/README.md +20 -14
- package/dist/assets/shared-skills.d.ts +4 -0
- package/dist/assets/shared-skills.js +8 -0
- package/dist/assets/shared-skills.js.map +1 -0
- package/dist/cli/args.d.ts +1 -1
- package/dist/cli/args.js +1 -1
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/audit.js +3 -3
- package/dist/cli/audit.js.map +1 -1
- package/dist/cli/claude-install-plan.js +2 -2
- package/dist/cli/claude-install-plan.js.map +1 -1
- package/dist/cli/doctor-lint.js +8 -8
- package/dist/cli/doctor-lint.js.map +1 -1
- package/dist/cli/global-writeback.js +1 -1
- package/dist/cli/global-writeback.js.map +1 -1
- package/dist/cli/host-commands.d.ts +1 -1
- package/dist/cli/host-commands.js +22 -4
- package/dist/cli/host-commands.js.map +1 -1
- package/dist/cli/link-command.d.ts +1 -1
- package/dist/cli/link-command.js +2 -2
- package/dist/cli/link-command.js.map +1 -1
- package/dist/cli/linkify.js +16 -71
- package/dist/cli/linkify.js.map +1 -1
- package/dist/cli/oms.js +20 -9
- package/dist/cli/oms.js.map +1 -1
- package/dist/cli/semantic-args.d.ts +1 -1
- package/dist/cli/semantic-http.js +3 -3
- package/dist/cli/semantic-http.js.map +1 -1
- package/dist/cli/semantic-usage.js +1 -1
- package/dist/cli/semantic-usage.js.map +1 -1
- package/dist/cli/semantic.js +1 -6
- package/dist/cli/semantic.js.map +1 -1
- package/dist/cli/setup-command.d.ts +1 -0
- package/dist/cli/setup-command.js +42 -147
- package/dist/cli/setup-command.js.map +1 -1
- package/dist/cli/update-notice.d.ts +1 -1
- package/dist/cli/update-notice.js +2 -2
- package/dist/cli/update-notice.js.map +1 -1
- package/dist/cli/usage.d.ts +1 -1
- package/dist/cli/usage.js +2 -2
- package/dist/cli/usage.js.map +1 -1
- package/dist/{capture → kernel/capture}/safe.d.ts +11 -1
- package/dist/{capture → kernel/capture}/safe.js +3 -3
- package/dist/kernel/capture/safe.js.map +1 -0
- package/dist/kernel/conventions/frontmatter.js.map +1 -0
- package/dist/kernel/conventions/lint.js.map +1 -0
- package/dist/kernel/conventions/report.js.map +1 -0
- package/dist/{conventions → kernel/conventions}/validate.d.ts +1 -1
- package/dist/kernel/conventions/validate.js.map +1 -0
- package/dist/kernel/conventions/vault-walk.js.map +1 -0
- package/dist/{conventions → kernel/conventions}/write-contract.d.ts +1 -1
- package/dist/kernel/conventions/write-contract.js.map +1 -0
- package/dist/kernel/conventions/write-protocol.js.map +1 -0
- package/dist/kernel/doctor/service.d.ts +71 -0
- package/dist/kernel/doctor/service.js +70 -0
- package/dist/kernel/doctor/service.js.map +1 -0
- package/dist/{engine → kernel/engine}/assemble.d.ts +24 -0
- package/dist/{engine → kernel/engine}/assemble.js +142 -4
- package/dist/kernel/engine/assemble.js.map +1 -0
- package/dist/{engine → kernel/engine}/conventions/vault-lint.d.ts +1 -1
- package/dist/{engine → kernel/engine}/conventions/vault-lint.js +1 -1
- package/dist/kernel/engine/conventions/vault-lint.js.map +1 -0
- package/dist/kernel/engine/embed/chunker.js.map +1 -0
- package/dist/kernel/engine/embed/deferred.js.map +1 -0
- package/dist/{engine → kernel/engine}/embed/hash-stub.test-helper.d.ts +1 -1
- package/dist/{engine → kernel/engine}/embed/hash-stub.test-helper.js +1 -1
- package/dist/kernel/engine/embed/hash-stub.test-helper.js.map +1 -0
- package/dist/kernel/engine/embed/identity.js.map +1 -0
- package/dist/kernel/engine/embed/provider.js.map +1 -0
- package/dist/{engine → kernel/engine}/embed/store.d.ts +8 -0
- package/dist/{engine → kernel/engine}/embed/store.js +212 -8
- package/dist/kernel/engine/embed/store.js.map +1 -0
- package/dist/{engine → kernel/engine}/embed/sync.d.ts +3 -1
- package/dist/{engine → kernel/engine}/embed/sync.js +5 -3
- package/dist/kernel/engine/embed/sync.js.map +1 -0
- package/dist/kernel/engine/graph/builder.js.map +1 -0
- package/dist/kernel/engine/graph/explore.js.map +1 -0
- package/dist/kernel/engine/graph/node.js.map +1 -0
- package/dist/kernel/engine/graph/resolver.js.map +1 -0
- package/dist/kernel/engine/graph/traverse.js.map +1 -0
- package/dist/kernel/engine/linkify/apply.js.map +1 -0
- package/dist/kernel/engine/linkify/josa.js.map +1 -0
- package/dist/kernel/engine/linkify/mask.js.map +1 -0
- package/dist/kernel/engine/linkify/suggest.js.map +1 -0
- package/dist/kernel/engine/linkify/types.js.map +1 -0
- package/dist/{engine → kernel/engine}/mcp/facade.d.ts +7 -1
- package/dist/{engine → kernel/engine}/mcp/facade.js +32 -11
- package/dist/kernel/engine/mcp/facade.js.map +1 -0
- package/dist/kernel/engine/mcp/op-mappers.js.map +1 -0
- package/dist/kernel/engine/mcp/query-mapper.js.map +1 -0
- package/dist/{engine → kernel/engine}/mcp/types.d.ts +5 -0
- package/dist/kernel/engine/mcp/types.js.map +1 -0
- package/dist/{engine → kernel/engine}/retrieval/dispatcher.d.ts +1 -1
- package/dist/{engine → kernel/engine}/retrieval/dispatcher.js +8 -6
- package/dist/kernel/engine/retrieval/dispatcher.js.map +1 -0
- package/dist/{engine → kernel/engine}/retrieval/index.d.ts +2 -0
- package/dist/{engine → kernel/engine}/retrieval/index.js +5 -2
- package/dist/kernel/engine/retrieval/index.js.map +1 -0
- package/dist/kernel/engine/retrieval/reranker.js.map +1 -0
- package/dist/kernel/engine/retrieval/rrf.js.map +1 -0
- package/dist/kernel/engine/tracer.js.map +1 -0
- package/dist/{engine → kernel/engine}/types.d.ts +4 -4
- package/dist/kernel/engine/types.js.map +1 -0
- package/dist/{graph → kernel/graph}/cache.d.ts +1 -1
- package/dist/{graph → kernel/graph}/cache.js +1 -1
- package/dist/kernel/graph/cache.js.map +1 -0
- package/dist/kernel/graph/explore.js.map +1 -0
- package/dist/{harness → kernel/harness}/surface-registry.d.ts +0 -1
- package/dist/kernel/harness/surface-registry.js +170 -0
- package/dist/kernel/harness/surface-registry.js.map +1 -0
- package/dist/{harness → kernel/harness}/validation.js +67 -4
- package/dist/kernel/harness/validation.js.map +1 -0
- package/dist/{index.d.ts → kernel/index.d.ts} +5 -6
- package/dist/kernel/index.js +12 -0
- package/dist/kernel/index.js.map +1 -0
- package/dist/{install → kernel/install}/adapter-source.d.ts +10 -1
- package/dist/kernel/install/adapter-source.js +76 -0
- package/dist/kernel/install/adapter-source.js.map +1 -0
- package/dist/kernel/install/common.js.map +1 -0
- package/dist/{install → kernel/install}/hosts.d.ts +3 -3
- package/dist/{install → kernel/install}/hosts.js +3 -22
- package/dist/kernel/install/hosts.js.map +1 -0
- package/dist/{core/ontology → kernel/install}/types.js.map +1 -1
- package/dist/{link → kernel/link}/convention-note.js +2 -2
- package/dist/kernel/link/convention-note.js.map +1 -0
- package/dist/kernel/link/global-config.js.map +1 -0
- package/dist/kernel/link/link.js.map +1 -0
- package/dist/kernel/link/workflow.d.ts +55 -0
- package/dist/kernel/link/workflow.js +107 -0
- package/dist/kernel/link/workflow.js.map +1 -0
- package/dist/{ontology → kernel/ontology}/active.d.ts +1 -1
- package/dist/{ontology → kernel/ontology}/active.js +2 -2
- package/dist/kernel/ontology/active.js.map +1 -0
- package/dist/kernel/ontology/loader.js.map +1 -0
- package/dist/kernel/ontology/resolver.js.map +1 -0
- package/dist/{install → kernel/ontology}/types.js.map +1 -1
- package/dist/kernel/plugin/index.d.ts +1 -0
- package/dist/kernel/plugin/index.js +2 -0
- package/dist/kernel/plugin/index.js.map +1 -0
- package/dist/{core → kernel}/runtime/assets.d.ts +2 -4
- package/dist/{core → kernel}/runtime/assets.js +1 -3
- package/dist/kernel/runtime/assets.js.map +1 -0
- package/dist/kernel/search/morning-test-fixtures.js.map +1 -0
- package/dist/{retrieve → kernel/search}/morning.d.ts +0 -1
- package/dist/kernel/search/morning.js.map +1 -0
- package/dist/kernel/search/semantic-contract.js.map +1 -0
- package/dist/kernel/searchbackend/engine-search-backend.d.ts +28 -0
- package/dist/kernel/searchbackend/engine-search-backend.js +67 -0
- package/dist/kernel/searchbackend/engine-search-backend.js.map +1 -0
- package/dist/kernel/searchbackend/index.d.ts +2 -0
- package/dist/kernel/searchbackend/index.js +2 -0
- package/dist/kernel/searchbackend/index.js.map +1 -0
- package/dist/kernel/searchbackend/search-backend.d.ts +47 -0
- package/dist/kernel/searchbackend/search-backend.js +49 -0
- package/dist/kernel/searchbackend/search-backend.js.map +1 -0
- package/dist/{mcp → kernel/semantic}/semantic-engine.d.ts +3 -2
- package/dist/{mcp → kernel/semantic}/semantic-engine.js +5 -5
- package/dist/kernel/semantic/semantic-engine.js.map +1 -0
- package/dist/{mcp → kernel/semantic}/semantic-retrieve-args.d.ts +2 -2
- package/dist/{mcp → kernel/semantic}/semantic-retrieve-args.js +0 -8
- package/dist/kernel/semantic/semantic-retrieve-args.js.map +1 -0
- package/dist/{mcp → kernel/semantic}/semantic-retrieve-schema.d.ts +0 -24
- package/dist/{mcp → kernel/semantic}/semantic-retrieve-schema.js +0 -8
- package/dist/kernel/semantic/semantic-retrieve-schema.js.map +1 -0
- package/dist/{mcp → kernel/semantic}/semantic-retrieve.js +5 -9
- package/dist/kernel/semantic/semantic-retrieve.js.map +1 -0
- package/dist/kernel/semantic/semantic-schemas.js.map +1 -0
- package/dist/{mcp → kernel/semantic}/semantic-tool-schemas.js +0 -28
- package/dist/kernel/semantic/semantic-tool-schemas.js.map +1 -0
- package/dist/{setup → kernel/setup}/axis.d.ts +1 -1
- package/dist/{setup → kernel/setup}/axis.js +1 -1
- package/dist/kernel/setup/axis.js.map +1 -0
- package/dist/{cli/setup-documents.d.ts → kernel/setup/documents.d.ts} +1 -1
- package/dist/{cli/setup-documents.js → kernel/setup/documents.js} +15 -49
- package/dist/kernel/setup/documents.js.map +1 -0
- package/dist/kernel/setup/service.d.ts +44 -0
- package/dist/kernel/setup/service.js +97 -0
- package/dist/kernel/setup/service.js.map +1 -0
- package/dist/kernel/update/update.js.map +1 -0
- package/dist/mcp/engine-morning-backend.d.ts +4 -4
- package/dist/mcp/engine-morning-backend.js +4 -18
- package/dist/mcp/engine-morning-backend.js.map +1 -1
- package/dist/mcp/link-tools.d.ts +9 -56
- package/dist/mcp/link-tools.js +5 -129
- package/dist/mcp/link-tools.js.map +1 -1
- package/dist/mcp/server.d.ts +9 -2
- package/dist/mcp/server.js +326 -327
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/update-notice.d.ts +1 -1
- package/dist/mcp/update-notice.js +1 -1
- package/dist/mcp/update-notice.js.map +1 -1
- package/dist/{install → vendors/claude}/claude-hooks.d.ts +1 -1
- package/dist/{install → vendors/claude}/claude-hooks.js +1 -1
- package/dist/vendors/claude/claude-hooks.js.map +1 -0
- package/dist/{install → vendors/claude}/claude-marketplace.d.ts +3 -3
- package/dist/{install → vendors/claude}/claude-marketplace.js +6 -9
- package/dist/vendors/claude/claude-marketplace.js.map +1 -0
- package/dist/{install → vendors/claude}/claude.d.ts +2 -2
- package/dist/{install → vendors/claude}/claude.js +2 -2
- package/dist/vendors/claude/claude.js.map +1 -0
- package/dist/{hook → vendors/claude/hook}/post-tool-use.js +5 -5
- package/dist/vendors/claude/hook/post-tool-use.js.map +1 -0
- package/dist/vendors/claude/hook/pre-tool-use.js.map +1 -0
- package/dist/vendors/claude/hook/stdin.js.map +1 -0
- package/dist/vendors/codex/codex.d.ts +10 -0
- package/dist/{install → vendors/codex}/codex.js +19 -37
- package/dist/vendors/codex/codex.js.map +1 -0
- package/dist/{install → vendors/hermes}/hermes.d.ts +2 -2
- package/dist/{install → vendors/hermes}/hermes.js +15 -7
- package/dist/vendors/hermes/hermes.js.map +1 -0
- package/docs/adapters.md +15 -0
- package/docs/install.md +10 -11
- package/package.json +21 -9
- package/adapters/README.md +0 -99
- package/adapters/claude-code/skills/compile/SKILL.md +0 -27
- package/adapters/claude-code/skills/define/SKILL.md +0 -51
- package/adapters/claude-code/skills/distill/SKILL.md +0 -28
- package/adapters/claude-code/skills/doctor/SKILL.md +0 -58
- package/adapters/claude-code/skills/link/SKILL.md +0 -87
- package/adapters/claude-code/skills/retrieve/SKILL.md +0 -99
- package/adapters/claude-code/skills/setup/SKILL.md +0 -78
- package/adapters/claude-code/skills/uninstall/SKILL.md +0 -34
- package/adapters/claude-code/skills/update/SKILL.md +0 -45
- package/adapters/claude-code/skills/vault-decision-record/SKILL.md +0 -52
- package/adapters/claude-code/skills/vault-lint/SKILL.md +0 -47
- package/adapters/claude-code/skills/vault-scaffold/SKILL.md +0 -47
- package/adapters/claude-code/skills/wiki/SKILL.md +0 -82
- package/adapters/claude-code/skills/write/SKILL.md +0 -16
- package/adapters/codex/skills/oms-compile/SKILL.md +0 -16
- package/adapters/codex/skills/oms-distill/SKILL.md +0 -14
- package/adapters/codex/skills/oms-doctor/SKILL.md +0 -14
- package/adapters/codex/skills/oms-install/SKILL.md +0 -19
- package/adapters/codex/skills/oms-link/SKILL.md +0 -35
- package/adapters/codex/skills/oms-retrieve/SKILL.md +0 -32
- package/adapters/codex/skills/oms-setup/SKILL.md +0 -34
- package/adapters/codex/skills/oms-uninstall/SKILL.md +0 -20
- package/adapters/codex/skills/oms-update/SKILL.md +0 -22
- package/adapters/codex/skills/oms-vault-lint/SKILL.md +0 -19
- package/adapters/codex/skills/oms-wiki/SKILL.md +0 -39
- package/adapters/codex/skills/oms-write/SKILL.md +0 -10
- package/adapters/hermes/skills/compile/SKILL.md +0 -13
- package/adapters/hermes/skills/distill/SKILL.md +0 -10
- package/adapters/hermes/skills/doctor/SKILL.md +0 -14
- package/adapters/hermes/skills/install/SKILL.md +0 -19
- package/adapters/hermes/skills/link/SKILL.md +0 -18
- package/adapters/hermes/skills/retrieve/SKILL.md +0 -32
- package/adapters/hermes/skills/setup/SKILL.md +0 -37
- package/adapters/hermes/skills/uninstall/SKILL.md +0 -20
- package/adapters/hermes/skills/update/SKILL.md +0 -22
- package/adapters/hermes/skills/wiki/SKILL.md +0 -14
- package/adapters/hermes/skills/write/SKILL.md +0 -10
- package/core/agents/librarian.md +0 -44
- package/core/agents/retriever.md +0 -62
- package/core/skills/compile/CHANGELOG.md +0 -24
- package/core/skills/compile/SKILL.md +0 -57
- package/core/skills/define/SKILL.md +0 -59
- package/core/skills/distill/CHANGELOG.md +0 -39
- package/core/skills/distill/SKILL.md +0 -62
- package/core/skills/doctor/SKILL.md +0 -49
- package/core/skills/link/SKILL.md +0 -130
- package/core/skills/retrieve/SKILL.md +0 -78
- package/core/skills/setup/CHANGELOG.md +0 -49
- package/core/skills/setup/SKILL.md +0 -246
- package/core/skills/uninstall/SKILL.md +0 -34
- package/core/skills/vault-decision-record/CHANGELOG.md +0 -24
- package/core/skills/vault-decision-record/SKILL.md +0 -93
- package/core/skills/vault-lint/CHANGELOG.md +0 -35
- package/core/skills/vault-lint/SKILL.md +0 -58
- package/core/skills/vault-scaffold/CHANGELOG.md +0 -21
- package/core/skills/vault-scaffold/SKILL.md +0 -72
- package/core/skills/wiki/CHANGELOG.md +0 -23
- package/core/skills/wiki/SKILL.md +0 -159
- package/core/skills/write/SKILL.md +0 -15
- package/dist/capture/safe.js.map +0 -1
- package/dist/cli/setup-documents.js.map +0 -1
- package/dist/conventions/frontmatter.js.map +0 -1
- package/dist/conventions/lint.js.map +0 -1
- package/dist/conventions/report.js.map +0 -1
- package/dist/conventions/validate.js.map +0 -1
- package/dist/conventions/vault-walk.js.map +0 -1
- package/dist/conventions/write-contract.js.map +0 -1
- package/dist/conventions/write-protocol.js.map +0 -1
- package/dist/core/ontology/loader.js.map +0 -1
- package/dist/core/ontology/resolver.js.map +0 -1
- package/dist/core/runtime/assets.js.map +0 -1
- package/dist/engine/assemble.js.map +0 -1
- package/dist/engine/conventions/vault-lint.js.map +0 -1
- package/dist/engine/embed/chunker.js.map +0 -1
- package/dist/engine/embed/deferred.js.map +0 -1
- package/dist/engine/embed/hash-stub.test-helper.js.map +0 -1
- package/dist/engine/embed/identity.js.map +0 -1
- package/dist/engine/embed/provider.js.map +0 -1
- package/dist/engine/embed/store.js.map +0 -1
- package/dist/engine/embed/sync.js.map +0 -1
- package/dist/engine/graph/builder.js.map +0 -1
- package/dist/engine/graph/explore.js.map +0 -1
- package/dist/engine/graph/node.js.map +0 -1
- package/dist/engine/graph/resolver.js.map +0 -1
- package/dist/engine/graph/traverse.js.map +0 -1
- package/dist/engine/linkify/apply.js.map +0 -1
- package/dist/engine/linkify/josa.js.map +0 -1
- package/dist/engine/linkify/mask.js.map +0 -1
- package/dist/engine/linkify/suggest.js.map +0 -1
- package/dist/engine/linkify/types.js.map +0 -1
- package/dist/engine/mcp/facade.js.map +0 -1
- package/dist/engine/mcp/op-mappers.js.map +0 -1
- package/dist/engine/mcp/query-mapper.js.map +0 -1
- package/dist/engine/mcp/types.js.map +0 -1
- package/dist/engine/retrieval/dispatcher.js.map +0 -1
- package/dist/engine/retrieval/index.js.map +0 -1
- package/dist/engine/retrieval/reranker.js.map +0 -1
- package/dist/engine/retrieval/rrf.js.map +0 -1
- package/dist/engine/tracer.js.map +0 -1
- package/dist/engine/types.js.map +0 -1
- package/dist/graph/cache.js.map +0 -1
- package/dist/graph/explore.js.map +0 -1
- package/dist/harness/surface-registry.js +0 -397
- package/dist/harness/surface-registry.js.map +0 -1
- package/dist/harness/validation.js.map +0 -1
- package/dist/hook/post-tool-use.js.map +0 -1
- package/dist/hook/pre-tool-use.js.map +0 -1
- package/dist/hook/stdin.js.map +0 -1
- package/dist/index.js +0 -13
- package/dist/index.js.map +0 -1
- package/dist/install/adapter-source.js +0 -45
- package/dist/install/adapter-source.js.map +0 -1
- package/dist/install/claude-hooks.js.map +0 -1
- package/dist/install/claude-marketplace.js.map +0 -1
- package/dist/install/claude.js.map +0 -1
- package/dist/install/codex.d.ts +0 -24
- package/dist/install/codex.js.map +0 -1
- package/dist/install/common.js.map +0 -1
- package/dist/install/hermes.js.map +0 -1
- package/dist/install/hosts.js.map +0 -1
- package/dist/link/convention-note.js.map +0 -1
- package/dist/link/global-config.js.map +0 -1
- package/dist/link/link.js.map +0 -1
- package/dist/mcp/semantic-engine.js.map +0 -1
- package/dist/mcp/semantic-retrieve-args.js.map +0 -1
- package/dist/mcp/semantic-retrieve-schema.js.map +0 -1
- package/dist/mcp/semantic-retrieve.js.map +0 -1
- package/dist/mcp/semantic-schemas.js.map +0 -1
- package/dist/mcp/semantic-tool-schemas.js.map +0 -1
- package/dist/ontology/active.js.map +0 -1
- package/dist/retrieve/morning-test-fixtures.js.map +0 -1
- package/dist/retrieve/morning.js.map +0 -1
- package/dist/retrieve/semantic-contract.js.map +0 -1
- package/dist/setup/axis.js.map +0 -1
- package/dist/update/update.js.map +0 -1
- package/docs/release.md +0 -188
- /package/{adapters/codex/.mcp.json → .mcp.codex.json} +0 -0
- /package/{adapters/claude-code/.mcp.json → .mcp.json} +0 -0
- /package/{adapters/claude-code → assets/claude}/hooks/oms-guard.mjs +0 -0
- /package/{adapters/claude-code → assets/claude}/hooks/oms-post-guard.mjs +0 -0
- /package/dist/{conventions → kernel/conventions}/frontmatter.d.ts +0 -0
- /package/dist/{conventions → kernel/conventions}/frontmatter.js +0 -0
- /package/dist/{conventions → kernel/conventions}/lint.d.ts +0 -0
- /package/dist/{conventions → kernel/conventions}/lint.js +0 -0
- /package/dist/{conventions → kernel/conventions}/report.d.ts +0 -0
- /package/dist/{conventions → kernel/conventions}/report.js +0 -0
- /package/dist/{conventions → kernel/conventions}/validate.js +0 -0
- /package/dist/{conventions → kernel/conventions}/vault-walk.d.ts +0 -0
- /package/dist/{conventions → kernel/conventions}/vault-walk.js +0 -0
- /package/dist/{conventions → kernel/conventions}/write-contract.js +0 -0
- /package/dist/{conventions → kernel/conventions}/write-protocol.d.ts +0 -0
- /package/dist/{conventions → kernel/conventions}/write-protocol.js +0 -0
- /package/dist/{engine → kernel/engine}/embed/chunker.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/embed/chunker.js +0 -0
- /package/dist/{engine → kernel/engine}/embed/deferred.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/embed/deferred.js +0 -0
- /package/dist/{engine → kernel/engine}/embed/identity.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/embed/identity.js +0 -0
- /package/dist/{engine → kernel/engine}/embed/provider.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/embed/provider.js +0 -0
- /package/dist/{engine → kernel/engine}/graph/builder.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/graph/builder.js +0 -0
- /package/dist/{engine → kernel/engine}/graph/explore.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/graph/explore.js +0 -0
- /package/dist/{engine → kernel/engine}/graph/node.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/graph/node.js +0 -0
- /package/dist/{engine → kernel/engine}/graph/resolver.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/graph/resolver.js +0 -0
- /package/dist/{engine → kernel/engine}/graph/traverse.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/graph/traverse.js +0 -0
- /package/dist/{engine → kernel/engine}/linkify/apply.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/linkify/apply.js +0 -0
- /package/dist/{engine → kernel/engine}/linkify/josa.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/linkify/josa.js +0 -0
- /package/dist/{engine → kernel/engine}/linkify/mask.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/linkify/mask.js +0 -0
- /package/dist/{engine → kernel/engine}/linkify/suggest.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/linkify/suggest.js +0 -0
- /package/dist/{engine → kernel/engine}/linkify/types.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/linkify/types.js +0 -0
- /package/dist/{engine → kernel/engine}/mcp/op-mappers.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/mcp/op-mappers.js +0 -0
- /package/dist/{engine → kernel/engine}/mcp/query-mapper.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/mcp/query-mapper.js +0 -0
- /package/dist/{engine → kernel/engine}/mcp/types.js +0 -0
- /package/dist/{engine → kernel/engine}/retrieval/reranker.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/retrieval/reranker.js +0 -0
- /package/dist/{engine → kernel/engine}/retrieval/rrf.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/retrieval/rrf.js +0 -0
- /package/dist/{engine → kernel/engine}/tracer.d.ts +0 -0
- /package/dist/{engine → kernel/engine}/tracer.js +0 -0
- /package/dist/{engine → kernel/engine}/types.js +0 -0
- /package/dist/{graph → kernel/graph}/explore.d.ts +0 -0
- /package/dist/{graph → kernel/graph}/explore.js +0 -0
- /package/dist/{harness → kernel/harness}/validation.d.ts +0 -0
- /package/dist/{install → kernel/install}/common.d.ts +0 -0
- /package/dist/{install → kernel/install}/common.js +0 -0
- /package/dist/{install → kernel/install}/types.d.ts +0 -0
- /package/dist/{core/ontology → kernel/install}/types.js +0 -0
- /package/dist/{link → kernel/link}/convention-note.d.ts +0 -0
- /package/dist/{link → kernel/link}/global-config.d.ts +0 -0
- /package/dist/{link → kernel/link}/global-config.js +0 -0
- /package/dist/{link → kernel/link}/link.d.ts +0 -0
- /package/dist/{link → kernel/link}/link.js +0 -0
- /package/dist/{core → kernel}/ontology/loader.d.ts +0 -0
- /package/dist/{core → kernel}/ontology/loader.js +0 -0
- /package/dist/{core → kernel}/ontology/resolver.d.ts +0 -0
- /package/dist/{core → kernel}/ontology/resolver.js +0 -0
- /package/dist/{core → kernel}/ontology/types.d.ts +0 -0
- /package/dist/{install → kernel/ontology}/types.js +0 -0
- /package/dist/{retrieve → kernel/search}/morning-test-fixtures.d.ts +0 -0
- /package/dist/{retrieve → kernel/search}/morning-test-fixtures.js +0 -0
- /package/dist/{retrieve → kernel/search}/morning.js +0 -0
- /package/dist/{retrieve → kernel/search}/semantic-contract.d.ts +0 -0
- /package/dist/{retrieve → kernel/search}/semantic-contract.js +0 -0
- /package/dist/{mcp → kernel/semantic}/semantic-retrieve.d.ts +0 -0
- /package/dist/{mcp → kernel/semantic}/semantic-schemas.d.ts +0 -0
- /package/dist/{mcp → kernel/semantic}/semantic-schemas.js +0 -0
- /package/dist/{mcp → kernel/semantic}/semantic-tool-schemas.d.ts +0 -0
- /package/dist/{update → kernel/update}/update.d.ts +0 -0
- /package/dist/{update → kernel/update}/update.js +0 -0
- /package/dist/{hook → vendors/claude/hook}/post-tool-use.d.ts +0 -0
- /package/dist/{hook → vendors/claude/hook}/pre-tool-use.d.ts +0 -0
- /package/dist/{hook → vendors/claude/hook}/pre-tool-use.js +0 -0
- /package/dist/{hook → vendors/claude/hook}/stdin.d.ts +0 -0
- /package/dist/{hook → vendors/claude/hook}/stdin.js +0 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: doctor
|
|
3
|
+
description: Diagnose vault convention and index problems, then run explicit repairs.
|
|
4
|
+
mcp_tool: oms_doctor
|
|
5
|
+
mcp_args:
|
|
6
|
+
op: "audit"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# doctor
|
|
10
|
+
|
|
11
|
+
Diagnose vault problems and perform the requested repair.
|
|
12
|
+
|
|
13
|
+
## Use when
|
|
14
|
+
|
|
15
|
+
Use this skill when a vault has convention violations, an unhealthy graph or semantic index, or stale generated state that needs correction. Use `status` instead when inspection alone is required.
|
|
16
|
+
|
|
17
|
+
## Usage
|
|
18
|
+
|
|
19
|
+
```text
|
|
20
|
+
/doctor <audit|validate|build-graph|semantic-cleanup|sync-embeddings>
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
`audit` and `validate` inspect notes against their declared concept schemas. `build-graph`, `semantic-cleanup`, and `sync-embeddings` are repair operations and may write generated graph or semantic-index state. Review the diagnosis, then invoke only the repair needed.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: link
|
|
3
|
+
description: Suggest or apply safe wikilinks between vault notes.
|
|
4
|
+
mcp_tool: oms_link
|
|
5
|
+
mcp_args:
|
|
6
|
+
op: "suggest"
|
|
7
|
+
notePath: "$1"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# link
|
|
11
|
+
|
|
12
|
+
Suggest or apply `[[wikilinks]]` between a note and the vault's term notes.
|
|
13
|
+
|
|
14
|
+
## Use when
|
|
15
|
+
|
|
16
|
+
Use `suggest` before writing or revising a note, or use `apply` to add accepted links to an existing note.
|
|
17
|
+
|
|
18
|
+
## Usage
|
|
19
|
+
|
|
20
|
+
```text
|
|
21
|
+
/link <suggest|apply> <vault-relative-note-path>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Link targets are term notes only. Suggestions are surface-anchored, add at most one link per target in a body, and report ambiguous matches rather than resolving them. Applying suggestions writes through the vault write kernel and requires the suggestion's `baseContentHash` and accepted candidate IDs.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: search
|
|
3
|
+
description: Retrieve vault knowledge through declared retrieval lenses.
|
|
4
|
+
aliases: [retrieve]
|
|
5
|
+
mcp_tool: oms_search
|
|
6
|
+
mcp_args:
|
|
7
|
+
op: "semantic-query"
|
|
8
|
+
query: "$1"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# search
|
|
12
|
+
|
|
13
|
+
Retrieve notes and declared fields for a vault question. A lens is a vault-declared retrieval view, not an ad-hoc query filter: it identifies which fields matter for a purpose such as synthesis or audit.
|
|
14
|
+
|
|
15
|
+
## Use when
|
|
16
|
+
|
|
17
|
+
Use this skill to find and assemble relevant vault knowledge without changing the vault.
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```text
|
|
22
|
+
/search <query>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Choose the declared lens that matches the request, return only that lens's fields, and group results by concept or folder. Search may combine the live note, frontmatter, and wikilink graph with available semantic candidates; graph results remain available when the semantic index is unavailable.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: status
|
|
3
|
+
description: Report read-only vault health, statistics, and index state.
|
|
4
|
+
mcp_tool: oms_status
|
|
5
|
+
mcp_args: {}
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# status
|
|
9
|
+
|
|
10
|
+
Report the current state of a vault without changing it.
|
|
11
|
+
|
|
12
|
+
## Use when
|
|
13
|
+
|
|
14
|
+
Use this skill to inspect vault health and statistics before deciding whether maintenance is needed.
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
```text
|
|
19
|
+
/status
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Report note counts, semantic-index availability and freshness, and graph-cache status. Status is observational only: it never rebuilds an index, repairs notes, or writes vault files.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: write
|
|
3
|
+
description: Write a vault note through the Oh My Second Brain kernel contract.
|
|
4
|
+
mcp_tool: oms_write
|
|
5
|
+
mcp_args:
|
|
6
|
+
op: "create"
|
|
7
|
+
notePath: "$1"
|
|
8
|
+
body: "$2"
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# write
|
|
12
|
+
|
|
13
|
+
Write, append to, or update a vault note through MCP `oms_write`. Do not use host Write/Edit for vault `.md` files.
|
|
14
|
+
|
|
15
|
+
## Use when
|
|
16
|
+
|
|
17
|
+
Use this skill for every vault-note mutation.
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
```text
|
|
22
|
+
/write <create|append|update> <vault-relative-note-path> [body]
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Use `op` with `create`, `append`, or `update`. The kernel owns `.oms` and returns one status:
|
|
26
|
+
|
|
27
|
+
- `ask` — fill the missing or invalid fields and call `write` again
|
|
28
|
+
- `inbox` — tell the user; do not invent a folder
|
|
29
|
+
- `written` — done
|
|
30
|
+
- `rejected` — fix `violations` or `reason` and call `write` again
|
|
@@ -1,14 +1,20 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Schema reference assets
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The `*.schema.yaml` files in this directory are shipped reference assets. They
|
|
4
|
+
are not installed into a vault and are not read by the current setup workflow.
|
|
4
5
|
|
|
5
|
-
##
|
|
6
|
+
## Setup output
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
and required flags for one note type. These files are the authoring source;
|
|
9
|
-
at vault setup time, `vault-scaffold` copies them into the vault's own `.oms/schemas/`.
|
|
8
|
+
`oms setup` creates the vault's `.oms/` directory and writes:
|
|
10
9
|
|
|
11
|
-
|
|
10
|
+
- `.oms/taxonomy.yaml`, containing the configured folder-to-concept bindings.
|
|
11
|
+
- `.oms/concepts/`, containing bundled concept documents from
|
|
12
|
+
`core/ontology/concepts/` when a document does not already exist locally.
|
|
13
|
+
|
|
14
|
+
Setup does not create `.oms/schemas/` or copy files from this directory. The
|
|
15
|
+
live convention model is the taxonomy plus concept documents above.
|
|
16
|
+
|
|
17
|
+
## Reference files
|
|
12
18
|
|
|
13
19
|
| File | Note type | Key constraint |
|
|
14
20
|
|------|-----------|----------------|
|
|
@@ -31,19 +37,19 @@ fields:
|
|
|
31
37
|
enum: [...] # only when type: enum
|
|
32
38
|
normalize: kebab # optional — normalize list values to kebab-case
|
|
33
39
|
|
|
34
|
-
lenses: # optional
|
|
40
|
+
lenses: # optional named retrieval views
|
|
35
41
|
- name: <lens>
|
|
36
42
|
intent: "..."
|
|
37
43
|
fields: [...]
|
|
38
44
|
|
|
39
45
|
validation:
|
|
40
46
|
allow_extra_fields: true # vault notes may carry additional ad-hoc keys
|
|
41
|
-
strict_enum: true # enum violations are hard errors
|
|
47
|
+
strict_enum: true # enum violations are hard errors
|
|
42
48
|
```
|
|
43
49
|
|
|
44
|
-
##
|
|
50
|
+
## Reference constraints
|
|
45
51
|
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
|
|
49
|
-
-
|
|
52
|
+
- Changes to these reference files do not change a configured vault.
|
|
53
|
+
- The active fields and constraints for a vault live in its `.oms/concepts/`
|
|
54
|
+
documents.
|
|
55
|
+
- Adding a required field to an active concept requires updating existing notes.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** The single authored skill source used by every host installer. */
|
|
2
|
+
export declare const SHARED_SKILLS_SOURCE = "assets/skills";
|
|
3
|
+
/** Absolute path to the shared skill source beneath `packageRoot`. */
|
|
4
|
+
export declare function resolveSharedSkillsSource(packageRoot: string): string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
/** The single authored skill source used by every host installer. */
|
|
3
|
+
export const SHARED_SKILLS_SOURCE = "assets/skills";
|
|
4
|
+
/** Absolute path to the shared skill source beneath `packageRoot`. */
|
|
5
|
+
export function resolveSharedSkillsSource(packageRoot) {
|
|
6
|
+
return path.join(packageRoot, ...SHARED_SKILLS_SOURCE.split("/"));
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=shared-skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-skills.js","sourceRoot":"","sources":["../../src/assets/shared-skills.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,qEAAqE;AACrE,MAAM,CAAC,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAEpD,sEAAsE;AACtE,MAAM,UAAU,yBAAyB,CAAC,WAAmB;IAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AACpE,CAAC"}
|
package/dist/cli/args.d.ts
CHANGED
package/dist/cli/args.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
-
import { harnessSurfaceRegistry } from "../harness/surface-registry.js";
|
|
2
|
+
import { harnessSurfaceRegistry } from "../kernel/harness/surface-registry.js";
|
|
3
3
|
export class CliArgumentError extends Error {
|
|
4
4
|
constructor(message) {
|
|
5
5
|
super(message);
|
package/dist/cli/args.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/audit.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { collectObservedFields, collectObservedFieldValues, } from "../setup/axis.js";
|
|
2
|
-
import { lintVault } from "../engine/conventions/vault-lint.js";
|
|
3
|
-
import { resolveActiveOntology } from "../ontology/active.js";
|
|
1
|
+
import { collectObservedFields, collectObservedFieldValues, } from "../kernel/setup/axis.js";
|
|
2
|
+
import { lintVault } from "../kernel/engine/conventions/vault-lint.js";
|
|
3
|
+
import { resolveActiveOntology } from "../kernel/ontology/active.js";
|
|
4
4
|
/** Fields observed in a folder that its bound concept(s) do not declare. */
|
|
5
5
|
function undeclaredObservedFields(ontology, summary) {
|
|
6
6
|
const binding = ontology.taxonomy.folders[summary.folder];
|
package/dist/cli/audit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/cli/audit.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,0BAA0B,GAG3B,MAAM,
|
|
1
|
+
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/cli/audit.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { resolveBundledAssetPaths } from "../
|
|
1
|
+
import { resolveBundledAssetPaths } from "../kernel/runtime/assets.js";
|
|
2
2
|
const bundledAssets = resolveBundledAssetPaths();
|
|
3
3
|
function shellQuote(value) {
|
|
4
4
|
if (/^[A-Za-z0-9_/:=.,@%+-]+$/.test(value)) {
|
|
@@ -7,7 +7,7 @@ function shellQuote(value) {
|
|
|
7
7
|
return `'${value.replace(/'/g, "'\\''")}'`;
|
|
8
8
|
}
|
|
9
9
|
export function buildClaudeInstallPlan(_opts) {
|
|
10
|
-
const pluginPath = bundledAssets.
|
|
10
|
+
const pluginPath = bundledAssets.packageRoot;
|
|
11
11
|
return {
|
|
12
12
|
pluginPath,
|
|
13
13
|
pluginInstallCommand: `claude plugin install ${shellQuote(pluginPath)}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-install-plan.js","sourceRoot":"","sources":["../../src/cli/claude-install-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"claude-install-plan.js","sourceRoot":"","sources":["../../src/cli/claude-install-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,MAAM,aAAa,GAAG,wBAAwB,EAAE,CAAC;AASjD,SAAS,UAAU,CAAC,KAAa;IAC/B,IAAI,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAwB;IAC7D,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC;IAC7C,OAAO;QACL,UAAU;QACV,oBAAoB,EAAE,yBAAyB,UAAU,CAAC,UAAU,CAAC,EAAE;QACvE,cAAc,EAAE,GAAG,UAAU,YAAY;QACzC,gBAAgB,EAAE,qBAAqB;KACxC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAuB;IAC5D,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,8FAA8F,CAAC,CAAC;IAC5G,OAAO,CAAC,GAAG,CACT,oHAAoH,CACrH,CAAC;AACJ,CAAC"}
|
package/dist/cli/doctor-lint.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { readFile, readdir } from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
|
-
import { parseNote } from "../conventions/frontmatter.js";
|
|
4
|
-
import { detectLinkIssues } from "../conventions/lint.js";
|
|
5
|
-
import { aggregateDoctor, formatDoctorReport, formatLintReport, } from "../conventions/report.js";
|
|
6
|
-
import { mapWithConcurrency, walkVaultMarkdown } from "../conventions/vault-walk.js";
|
|
7
|
-
import { validateFrontmatter } from "../conventions/validate.js";
|
|
8
|
-
import { loadOntology } from "../
|
|
9
|
-
import { resolveConcept } from "../
|
|
10
|
-
import { resolveBundledAssetPaths } from "../
|
|
3
|
+
import { parseNote } from "../kernel/conventions/frontmatter.js";
|
|
4
|
+
import { detectLinkIssues } from "../kernel/conventions/lint.js";
|
|
5
|
+
import { aggregateDoctor, formatDoctorReport, formatLintReport, } from "../kernel/conventions/report.js";
|
|
6
|
+
import { mapWithConcurrency, walkVaultMarkdown } from "../kernel/conventions/vault-walk.js";
|
|
7
|
+
import { validateFrontmatter } from "../kernel/conventions/validate.js";
|
|
8
|
+
import { loadOntology } from "../kernel/ontology/loader.js";
|
|
9
|
+
import { resolveConcept } from "../kernel/ontology/resolver.js";
|
|
10
|
+
import { resolveBundledAssetPaths } from "../kernel/runtime/assets.js";
|
|
11
11
|
const bundledAssets = resolveBundledAssetPaths();
|
|
12
12
|
export async function runDoctor(opts) {
|
|
13
13
|
const { vault } = opts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-lint.js","sourceRoot":"","sources":["../../src/cli/doctor-lint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"doctor-lint.js","sourceRoot":"","sources":["../../src/cli/doctor-lint.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { stat } from "node:fs/promises";
|
|
2
|
-
import { readGlobalConfig, writeGlobalConfig } from "../link/global-config.js";
|
|
2
|
+
import { readGlobalConfig, writeGlobalConfig } from "../kernel/link/global-config.js";
|
|
3
3
|
/**
|
|
4
4
|
* Register `vault` in the global config (`<homeDir>/.oms/config.yaml`).
|
|
5
5
|
* When `overwrite` is false, does nothing if a global config already exists
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-writeback.js","sourceRoot":"","sources":["../../src/cli/global-writeback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"global-writeback.js","sourceRoot":"","sources":["../../src/cli/global-writeback.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* install, the global vault record), so they live together and away from the
|
|
7
7
|
* router, which owns dispatch alone.
|
|
8
8
|
*/
|
|
9
|
-
import { type RuntimeSelection } from "../install/hosts.js";
|
|
9
|
+
import { type RuntimeSelection } from "../kernel/install/hosts.js";
|
|
10
10
|
/** Everything the host commands need from the parsed argv, plus the adapter root. */
|
|
11
11
|
export interface HostCommandContext {
|
|
12
12
|
readonly vault: string;
|
|
@@ -7,10 +7,28 @@
|
|
|
7
7
|
* router, which owns dispatch alone.
|
|
8
8
|
*/
|
|
9
9
|
import path from "node:path";
|
|
10
|
-
import { formatHostOperationResults, formatHostOperationResultsJson, runHostOperation, } from "../install/hosts.js";
|
|
11
|
-
import { formatUpdateResult, runUpdate } from "../update/update.js";
|
|
10
|
+
import { formatHostOperationResults, formatHostOperationResultsJson, runHostOperation, hostSurfaceForRuntime, } from "../kernel/install/hosts.js";
|
|
11
|
+
import { formatUpdateResult, runUpdate } from "../kernel/update/update.js";
|
|
12
|
+
import { installClaude, uninstallClaude } from "../vendors/claude/claude.js";
|
|
13
|
+
import { installCodex, uninstallCodex } from "../vendors/codex/codex.js";
|
|
14
|
+
import { installHermes, uninstallHermes } from "../vendors/hermes/hermes.js";
|
|
12
15
|
import { backfillGlobalVaultFromEnv, nonFatalGlobalWriteback, registerGlobalVault, } from "./global-writeback.js";
|
|
13
16
|
import { readCurrentPackageVersion } from "./update-notice.js";
|
|
17
|
+
async function runVendorHostOperation(options, runtime) {
|
|
18
|
+
const host = hostSurfaceForRuntime(runtime);
|
|
19
|
+
if (options.action === "install") {
|
|
20
|
+
if (runtime === "claude")
|
|
21
|
+
return installClaude(options, host);
|
|
22
|
+
if (runtime === "codex")
|
|
23
|
+
return installCodex(options, host);
|
|
24
|
+
return installHermes(options, host);
|
|
25
|
+
}
|
|
26
|
+
if (runtime === "claude")
|
|
27
|
+
return uninstallClaude(options);
|
|
28
|
+
if (runtime === "codex")
|
|
29
|
+
return uninstallCodex(options);
|
|
30
|
+
return uninstallHermes(options);
|
|
31
|
+
}
|
|
14
32
|
/** Persist the vault the install just configured into the global record. */
|
|
15
33
|
async function recordInstalledVault(context) {
|
|
16
34
|
if (context.vaultExplicit) {
|
|
@@ -34,7 +52,7 @@ export async function runInstallOrUninstall(action, context) {
|
|
|
34
52
|
executeExternal: context.executeExternal,
|
|
35
53
|
yes: context.yes,
|
|
36
54
|
adapterRoot: context.adapterRoot,
|
|
37
|
-
});
|
|
55
|
+
}, runVendorHostOperation);
|
|
38
56
|
console.log(context.json
|
|
39
57
|
? formatHostOperationResultsJson(results, context.dryRun)
|
|
40
58
|
: formatHostOperationResults(results, context.dryRun));
|
|
@@ -80,7 +98,7 @@ export async function runUpdateReconcile(context) {
|
|
|
80
98
|
executeExternal: context.executeExternal,
|
|
81
99
|
yes: true,
|
|
82
100
|
adapterRoot: context.adapterRoot,
|
|
83
|
-
});
|
|
101
|
+
}, runVendorHostOperation);
|
|
84
102
|
console.log(context.json
|
|
85
103
|
? formatHostOperationResultsJson(results, context.dryRun)
|
|
86
104
|
: formatHostOperationResults(results, context.dryRun));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-commands.js","sourceRoot":"","sources":["../../src/cli/host-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EACL,0BAA0B,EAC1B,8BAA8B,EAC9B,gBAAgB,
|
|
1
|
+
{"version":3,"file":"host-commands.js","sourceRoot":"","sources":["../../src/cli/host-commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type CreateVaultLinkResult } from "../link/link.js";
|
|
1
|
+
import { type CreateVaultLinkResult } from "../kernel/link/link.js";
|
|
2
2
|
export declare function formatLinkResult(result: CreateVaultLinkResult, conventionNotePath?: string): string;
|
|
3
3
|
export declare function runLink(options: {
|
|
4
4
|
readonly cwd: string;
|
package/dist/cli/link-command.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { createVaultLink, LINKED_GITIGNORE_PATTERN, } from "../link/link.js";
|
|
2
|
-
import { writeConventionUsageSection } from "../link/convention-note.js";
|
|
1
|
+
import { createVaultLink, LINKED_GITIGNORE_PATTERN, } from "../kernel/link/link.js";
|
|
2
|
+
import { writeConventionUsageSection } from "../kernel/link/convention-note.js";
|
|
3
3
|
export function formatLinkResult(result, conventionNotePath) {
|
|
4
4
|
const lines = ["Oh My Second Brain vault bridge ready."];
|
|
5
5
|
lines.push(` Vault: ${result.record.vault}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-command.js","sourceRoot":"","sources":["../../src/cli/link-command.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,wBAAwB,GAEzB,MAAM,
|
|
1
|
+
{"version":3,"file":"link-command.js","sourceRoot":"","sources":["../../src/cli/link-command.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,wBAAwB,GAEzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAEhF,MAAM,UAAU,gBAAgB,CAC9B,MAA6B,EAC7B,kBAA2B;IAE3B,MAAM,KAAK,GAAa,CAAC,wCAAwC,CAAC,CAAC;IACnE,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAClD,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IACzE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrF,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3F,KAAK,CAAC,IAAI,CAAC,gBAAgB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CACR,MAAM,CAAC,gBAAgB;QACrB,CAAC,CAAC,sBAAsB,wBAAwB,EAAE;QAClD,CAAC,CAAC,gBAAgB,wBAAwB,kBAAkB,CAC/D,CAAC;IACF,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,uBAAuB,kBAAkB,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAM7B;IACC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;QACvF,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACnE,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;YACnC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;SAC9B,CAAC,CAAC;QACH,IAAI,kBAAsC,CAAC;QAC3C,IAAI,OAAO,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;YACrC,kBAAkB,GAAG,CAAC,MAAM,2BAA2B,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;QACxG,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,CAAC;IACX,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjF,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
|
package/dist/cli/linkify.js
CHANGED
|
@@ -9,50 +9,9 @@
|
|
|
9
9
|
* `writeNote`, which keeps path safety, the concept contract, and the
|
|
10
10
|
* postcondition read-back unduplicated here.
|
|
11
11
|
*/
|
|
12
|
-
import {
|
|
13
|
-
import
|
|
14
|
-
import {
|
|
15
|
-
import { mapWithConcurrency, walkVaultMarkdown } from "../conventions/vault-walk.js";
|
|
16
|
-
import { writeNote } from "../capture/safe.js";
|
|
17
|
-
import { resolveConcept } from "../core/ontology/resolver.js";
|
|
18
|
-
import { applyLinks, hashBody } from "../engine/linkify/apply.js";
|
|
19
|
-
import { suggestLinks, termBoundNotes } from "../engine/linkify/suggest.js";
|
|
20
|
-
import { validateVaultLintFolder } from "../engine/conventions/vault-lint.js";
|
|
21
|
-
import { resolveActiveOntology } from "../ontology/active.js";
|
|
22
|
-
/** Parallel note reads; the walk itself is cheap, contents are the hot cost. */
|
|
23
|
-
const READ_CONCURRENCY = 16;
|
|
24
|
-
/** Flatten an unknown frontmatter `aliases` value to trimmed non-empty strings. */
|
|
25
|
-
function aliasStrings(value) {
|
|
26
|
-
if (Array.isArray(value))
|
|
27
|
-
return value.flatMap(aliasStrings);
|
|
28
|
-
if (typeof value !== "string")
|
|
29
|
-
return [];
|
|
30
|
-
const trimmed = value.trim();
|
|
31
|
-
return trimmed ? [trimmed] : [];
|
|
32
|
-
}
|
|
33
|
-
/** Read every markdown note in the vault, parsed into body + surface forms. */
|
|
34
|
-
async function scanVault(vault, ontology) {
|
|
35
|
-
const paths = [];
|
|
36
|
-
for await (const notePath of walkVaultMarkdown(vault))
|
|
37
|
-
paths.push(notePath);
|
|
38
|
-
return mapWithConcurrency(paths, READ_CONCURRENCY, async (notePath) => {
|
|
39
|
-
const raw = await readFile(path.join(vault, notePath), "utf-8");
|
|
40
|
-
const parsed = parseNote(raw);
|
|
41
|
-
return {
|
|
42
|
-
path: notePath,
|
|
43
|
-
body: parsed.body,
|
|
44
|
-
concept: resolveConcept(ontology, notePath)?.concept ?? null,
|
|
45
|
-
aliases: aliasStrings(parsed.frontmatter["aliases"]),
|
|
46
|
-
};
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
/** True when `notePath` sits inside `folder` (or when no scope was requested). */
|
|
50
|
-
function inScope(notePath, folder) {
|
|
51
|
-
return folder === undefined || notePath.startsWith(`${folder}/`);
|
|
52
|
-
}
|
|
53
|
-
function toTermNote(note) {
|
|
54
|
-
return { path: note.path, concept: note.concept, aliases: note.aliases };
|
|
55
|
-
}
|
|
12
|
+
import { linkifyVault } from "../kernel/link/workflow.js";
|
|
13
|
+
import { validateVaultLintFolder } from "../kernel/engine/conventions/vault-lint.js";
|
|
14
|
+
import { resolveActiveOntology } from "../kernel/ontology/active.js";
|
|
56
15
|
function describeCandidate(candidate) {
|
|
57
16
|
const ambiguity = candidate.ambiguous ? ` (ambiguous: ${candidate.rivalPaths.join(", ")})` : "";
|
|
58
17
|
return ` ${candidate.matchedText} → ${candidate.renderedReplacement} [${candidate.targetPath}]${ambiguity}`;
|
|
@@ -63,20 +22,6 @@ function reportNote(notePath, candidates) {
|
|
|
63
22
|
for (const candidate of candidates)
|
|
64
23
|
console.log(describeCandidate(candidate));
|
|
65
24
|
}
|
|
66
|
-
/** Persist one note's candidates through the capture kernel. */
|
|
67
|
-
async function applyNote(vault, ontology, note, candidates) {
|
|
68
|
-
const result = await applyLinks({
|
|
69
|
-
body: note.body,
|
|
70
|
-
baseContentHash: hashBody(note.body),
|
|
71
|
-
accepted: candidates,
|
|
72
|
-
writeNote,
|
|
73
|
-
target: { target: { vault, source: "explicit" }, ontology, notePath: note.path },
|
|
74
|
-
});
|
|
75
|
-
if (result.applied)
|
|
76
|
-
return true;
|
|
77
|
-
console.error(`[oms] linkify skipped ${note.path}: ${result.reason}`);
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
25
|
/**
|
|
81
26
|
* Scan (and optionally link) a vault, restricting link TARGETS to notes bound
|
|
82
27
|
* to the `term` concept.
|
|
@@ -89,25 +34,25 @@ export async function runLinkify(options) {
|
|
|
89
34
|
try {
|
|
90
35
|
const { ontology } = await resolveActiveOntology(options.vault);
|
|
91
36
|
await validateVaultLintFolder(options.vault, ontology, options.folder);
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
const scoped = notes.filter((note) => inScope(note.path, options.folder));
|
|
95
|
-
console.log(`\nOh My Second Brain linkify: ${String(scoped.length)} note(s) in scope, ${String(targets.length)} term note(s) available as link targets.`);
|
|
37
|
+
const workflow = await linkifyVault({ vault: options.vault, source: "explicit", ontology }, { folder: options.folder, apply: options.apply });
|
|
38
|
+
console.log(`\nOh My Second Brain linkify: ${String(workflow.notesInScope)} note(s) in scope, ${String(workflow.targetNotes)} term note(s) available as link targets.`);
|
|
96
39
|
let candidateCount = 0;
|
|
97
40
|
let appliedNotes = 0;
|
|
98
|
-
for (const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
41
|
+
for (const proposal of workflow.candidates) {
|
|
42
|
+
candidateCount += proposal.candidates.length;
|
|
43
|
+
reportNote(proposal.notePath, proposal.candidates);
|
|
44
|
+
if (proposal.outcome !== undefined) {
|
|
45
|
+
if (proposal.outcome.result.applied) {
|
|
46
|
+
appliedNotes++;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
console.error(`[oms] linkify skipped ${proposal.notePath}: ${proposal.outcome.result.reason}`);
|
|
50
|
+
}
|
|
106
51
|
}
|
|
107
52
|
}
|
|
108
53
|
console.log(options.apply
|
|
109
54
|
? `\n${String(candidateCount)} candidate(s); applied to ${String(appliedNotes)} note(s).\n`
|
|
110
|
-
: `\n${String(candidateCount)} candidate(s) proposed across ${String(
|
|
55
|
+
: `\n${String(candidateCount)} candidate(s) proposed across ${String(workflow.notesInScope)} note(s). Report only — nothing was written. Re-run with --apply --yes to write.\n`);
|
|
111
56
|
return 0;
|
|
112
57
|
}
|
|
113
58
|
catch (error) {
|
package/dist/cli/linkify.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"linkify.js","sourceRoot":"","sources":["../../src/cli/linkify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"linkify.js","sourceRoot":"","sources":["../../src/cli/linkify.ts"],"names":[],"mappings":"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"}
|