{"_id":"@butttons/obi","_rev":"3-a08623bc68b294a1717cfd86bd9e0050","name":"@butttons/obi","dist-tags":{"latest":"0.0.3"},"versions":{"0.0.1":{"name":"@butttons/obi","version":"0.0.1","author":{"name":"butttons"},"license":"MIT","_id":"@butttons/obi@0.0.1","maintainers":[{"name":"butttons","email":"zilllionaire@gmail.com"}],"homepage":"https://github.com/butttons/dot-obsidian#readme","bugs":{"url":"https://github.com/butttons/dot-obsidian/issues"},"bin":{"obi":"dist/index.js"},"dist":{"shasum":"727083fe18ebd762dea1ad3fa281f7024e6a9926","tarball":"https://registry.npmjs.org/@butttons/obi/-/obi-0.0.1.tgz","fileCount":4,"integrity":"sha512-j6yk7RTJpTu+4DZ1PlneCiL34/1LYTw0aIUa4p/gxeR8jNFCCIy0tsE/efa1vPzrwrr9yy9rPK0ICQuganJa+Q==","signatures":[{"sig":"MEQCIES8y7V0cXVof8TxaBL5Z7/ADARucCEq3Jd9hE9er1dEAiAW1ywxIS1K23Tdz1vF8TFpPlp4gqoG/a6iu8O+pa5iyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":361539},"type":"module","module":"src/index.ts","gitHead":"2edbc4d7892cb97671b43e394ab6bc8fc62201a8","scripts":{"test":"bun test ./src/","build":"bun build src/index.ts --compile --outfile dist/obi","build:all":"bun run build:linux && bun run build:macos && bun run build:macos-arm && bun run build:windows","build:npm":"bun build src/index.ts --outfile dist/index.js --target bun","type-check":"tsc","build:linux":"bun build src/index.ts --compile --target=bun-linux-x64 --outfile dist/obi-linux-x64","build:macos":"bun build src/index.ts --compile --target=bun-darwin-x64 --outfile dist/obi-darwin-x64","build:windows":"bun build src/index.ts --compile --target=bun-windows-x64 --outfile dist/obi-windows-x64.exe","build:macos-arm":"bun build src/index.ts --compile --target=bun-darwin-arm64 --outfile dist/obi-darwin-arm64"},"_npmUser":{"name":"butttons","email":"zilllionaire@gmail.com"},"repository":{"url":"git+https://github.com/butttons/dot-obsidian.git","type":"git"},"_npmVersion":"11.4.2","description":"Read-only CLI for Obsidian vaults. Structured data for LLM consumption.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","commander":"^14.0.3","@toon-format/toon":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/obi_0.0.1_1772019131076_0.5802550449748687","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@butttons/obi","version":"0.0.2","author":{"name":"butttons"},"license":"MIT","_id":"@butttons/obi@0.0.2","maintainers":[{"name":"butttons","email":"zilllionaire@gmail.com"}],"homepage":"https://github.com/butttons/obi#readme","bugs":{"url":"https://github.com/butttons/obi/issues"},"bin":{"obi":"dist/index.js"},"dist":{"shasum":"1006c7774709907a8eadbfdb8f41dca3b5ed8716","tarball":"https://registry.npmjs.org/@butttons/obi/-/obi-0.0.2.tgz","fileCount":4,"integrity":"sha512-s1WEvzvVNXwGbz3P5PulqPoRnYZ3PnxpaGN0K4MBdqmJnoy8Df6I8uIrKh0Kf6mFbSQlF4MUyJkZmE201J3+MA==","signatures":[{"sig":"MEUCIQDAH8Gv88DRi8zBA0l/OImnHd9SPa5b8Cm7WrQTjTOl9AIgc9/iqqWqv/2WDrwOy1CIQTV79tihFJNXlV5uYzVgOsI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":362654},"type":"module","module":"src/index.ts","gitHead":"019b70bb4c956444d6c108080b8d27cdc7c29bbe","scripts":{"test":"bun test ./src/","build":"bun build src/index.ts --compile --outfile dist/obi","build:all":"bun run build:linux && bun run build:macos && bun run build:macos-arm && bun run build:windows","build:npm":"bun build src/index.ts --outfile dist/index.js --target bun","type-check":"tsc","build:linux":"bun build src/index.ts --compile --target=bun-linux-x64 --outfile dist/obi-linux-x64","build:macos":"bun build src/index.ts --compile --target=bun-darwin-x64 --outfile dist/obi-darwin-x64","build:windows":"bun build src/index.ts --compile --target=bun-windows-x64 --outfile dist/obi-windows-x64.exe","build:macos-arm":"bun build src/index.ts --compile --target=bun-darwin-arm64 --outfile dist/obi-darwin-arm64"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:978a1850-8d98-494f-acf4-ef579f943d9c"}},"repository":{"url":"git+https://github.com/butttons/obi.git","type":"git"},"_npmVersion":"11.6.2","description":"Read-only CLI for Obsidian vaults. Structured data for LLM consumption.","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","yaml":"^2.8.2","commander":"^14.0.3","@toon-format/toon":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest"},"peerDependencies":{"typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/obi_0.0.2_1772020038426_0.7341242218562707","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@butttons/obi","version":"0.0.3","module":"src/index.ts","type":"module","description":"Read-only CLI for Obsidian vaults. Structured data for LLM consumption.","bin":{"obi":"dist/index.js"},"repository":{"type":"git","url":"git+https://github.com/butttons/obi.git"},"author":{"name":"butttons"},"license":"MIT","scripts":{"test":"bun test ./src/","type-check":"tsc","build":"bun build src/index.ts --compile --outfile dist/obi","build:npm":"bun build src/index.ts --outfile dist/index.js --target bun","build:linux":"bun build src/index.ts --compile --target=bun-linux-x64 --outfile dist/obi-linux-x64","build:macos":"bun build src/index.ts --compile --target=bun-darwin-x64 --outfile dist/obi-darwin-x64","build:macos-arm":"bun build src/index.ts --compile --target=bun-darwin-arm64 --outfile dist/obi-darwin-arm64","build:windows":"bun build src/index.ts --compile --target=bun-windows-x64 --outfile dist/obi-windows-x64.exe","build:all":"bun run build:linux && bun run build:macos && bun run build:macos-arm && bun run build:windows"},"dependencies":{"@toon-format/toon":"^2.1.0","commander":"^14.0.3","yaml":"^2.8.2","zod":"^4.3.6"},"devDependencies":{"@types/bun":"latest"},"peerDependencies":{"typescript":"^5"},"gitHead":"2ce02b309a62be0803768108dee1404897ac981a","_id":"@butttons/obi@0.0.3","bugs":{"url":"https://github.com/butttons/obi/issues"},"homepage":"https://github.com/butttons/obi#readme","_nodeVersion":"24.13.1","_npmVersion":"11.8.0","dist":{"integrity":"sha512-deFWQufs0zBmZ2S6oaoAaFAkS16bQThDftpiUY+SyXyN3uMwVi7zmqcCPfjpEHSUMIpjSoLUiiOSx8zH0DvYRQ==","shasum":"0cc03c611aaccadd9239bfb4016ea91307701afd","tarball":"https://registry.npmjs.org/@butttons/obi/-/obi-0.0.3.tgz","fileCount":4,"unpackedSize":363403,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@butttons%2fobi@0.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDrxpxmWrH5fgezL+lRR6I2R1qsHRIRfESenZ5CBjD3RAIgQx+0+VYvvmmX5PtKk2UPzRD7o8wlgBlFglKf19QeoM8="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:978a1850-8d98-494f-acf4-ef579f943d9c"}},"directories":{},"maintainers":[{"name":"butttons","email":"zilllionaire@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/obi_0.0.3_1772092055078_0.09866962682723468"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-25T11:32:10.973Z","modified":"2026-02-26T07:47:35.538Z","0.0.1":"2026-02-25T11:32:11.229Z","0.0.2":"2026-02-25T11:47:18.596Z","0.0.3":"2026-02-26T07:47:35.264Z"},"bugs":{"url":"https://github.com/butttons/obi/issues"},"author":{"name":"butttons"},"license":"MIT","homepage":"https://github.com/butttons/obi#readme","repository":{"type":"git","url":"git+https://github.com/butttons/obi.git"},"description":"Read-only CLI for Obsidian vaults. Structured data for LLM consumption.","maintainers":[{"name":"butttons","email":"zilllionaire@gmail.com"}],"readme":"# obi\n\nRead-only CLI that surfaces structured data from Obsidian vaults for LLM consumption. Default output is TOON, with `--json` fallback.\n\n## System Requirements\n\n- **Binary users**: No dependencies -- standalone executable\n- **Package manager**: [Bun](https://bun.sh) runtime required\n- **Supported OS**: macOS, Linux, Windows\n\n## Installation\n\n### Option 1: Package Manager\n\nRequires [Bun](https://bun.sh) runtime.\n\n```bash\nbun add -g @butttons/obi\n```\n\n### Option 2: Pre-built Binary\n\nDownload the latest binary for your platform from the [releases page](https://github.com/butttons/obi/releases):\n\n```bash\n# macOS (ARM64)\ncurl -L https://github.com/butttons/obi/releases/latest/download/obi-darwin-arm64 -o obi\nchmod +x obi\nsudo mv obi /usr/local/bin/\n\n# macOS (Intel)\ncurl -L https://github.com/butttons/obi/releases/latest/download/obi-darwin-x64 -o obi\nchmod +x obi\nsudo mv obi /usr/local/bin/\n\n# Linux\ncurl -L https://github.com/butttons/obi/releases/latest/download/obi-linux-x64 -o obi\nchmod +x obi\nsudo mv obi /usr/local/bin/\n\n# Windows\n# Download obi-windows-x64.exe from the releases page and add to PATH\n```\n\n### Option 3: Build from Source\n\n```bash\ngit clone https://github.com/butttons/obi.git\ncd obi\nbun install\nbun run build\nsudo mv dist/obi /usr/local/bin/\n```\n\n## Updating\n\n### Package Manager\n\n```bash\nbun add -g @butttons/obi@latest\n```\n\n### Binary\n\nRe-run the curl command from [Option 2](#option-2-pre-built-binary) to download the latest release.\n\n## Usage\n\n```bash\n# List available vaults\nobi vaults\n\n# Vault structure\nobi map --vault Work\n\n# Read a note\nobi read \"Projects/my-project.md\"\n\n# Search vault content\nobi search \"deployment\"\n\n# Filter by frontmatter\nobi query --type worker --tag billing\n```\n\n## Commands\n\n### Orientation\n\n| Command | Description |\n|---|---|\n| `obi vaults` | List all available vaults with paths and note counts |\n| `obi map` | Vault structure: folders and files with frontmatter metadata |\n| `obi context` | Current workspace state: active file, recent files, search, tabs |\n| `obi schema` | Property types, types in use, tags in use |\n\n### Navigation\n\n| Command | Description |\n|---|---|\n| `obi read <path>` | Frontmatter, body, outgoing and incoming links |\n| `obi read <path> -s \"Heading\"` | Extract only the section under a heading |\n| `obi toc <path>` | Heading tree for a note |\n| `obi links <path>` | Outgoing links, incoming links, 2-hop connections |\n| `obi list [folder]` | Folder contents with title, type, tags |\n\n### Query\n\n| Command | Description |\n|---|---|\n| `obi query --type <value>` | Filter notes by frontmatter fields |\n| `obi query --tag <value>` | Filter by tag |\n| `obi query -f key=value` | Generic frontmatter filter (repeatable) |\n| `obi search <term>` | Content search with file, line, and context |\n| `obi recent [--limit N]` | Notes sorted by updated_at |\n| `obi unread` | Notes where read: false in frontmatter |\n\n### Global Flags\n\n| Flag | Description |\n|---|---|\n| `--json` | Output JSON instead of TOON |\n| `--vault <name>` | Target vault by name |\n\n## Vault Resolution\n\n1. `OBI_VAULTS_PATH` env var pointing to the vaults parent directory\n2. Falls back to `~/Library/Mobile Documents/iCloud~md~obsidian/Documents`\n3. If neither exists, errors with setup instructions\n\nWhen `--vault` is omitted:\n1. If cwd is inside a vault, uses that vault\n2. Otherwise uses `default_vault` from global config\n3. Otherwise errors listing available vaults\n\n## Config\n\n### Global\n\n`~/.config/obi/config.json`\n\n```json\n{\n  \"default_vault\": \"Work\",\n  \"vaults\": {\n    \"Work\": { \"ignore\": [\"templates/\"] }\n  }\n}\n```\n\n### Per-Vault\n\n`<vault>/.obsidian/obi.json`\n\n```json\n{\n  \"ignore\": [\"templates/\"]\n}\n```\n\nPer-vault config wins over global when both exist.\n\n## Build\n\n```bash\n# npm distribution\nbun run build:npm\n\n# compiled binary\nbun run build\n\n# all platforms\nbun run build:all\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}