github TypeScript analyzed 53b38b8

dialnco/braincontext-cli

github

Agent memory that compiles instead of retrieves. Local-first context + wiki store for AI coding agents. No embeddings.

maintainer
dialnco
license
MIT
first seen
2026-09-03
last seen
2026-09-04
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 34 tools
transport stdio counts 34 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • create_context
  • delete_context
  • get_context
  • list_contexts
  • search_contexts
  • update_context
  • whoami
  • wiki_datatable_new
  • wiki_get
  • wiki_graph
  • wiki_ingest
  • wiki_ingest_status
  • wiki_link
  • wiki_lint
  • wiki_list_properties
  • wiki_new
  • wiki_patch_section
  • wiki_path
  • wiki_query
  • wiki_related
  • wiki_replace
  • wiki_search
  • wiki_set_prop
  • wiki_table_add_column
  • wiki_table_add_row
  • wiki_table_delete_column
  • wiki_table_delete_row
  • wiki_table_get
  • wiki_table_rename_column
  • wiki_table_set_cell
  • wiki_unlink
  • wiki_update
  • wiki_verify
  • wiki_view_new
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 53b38b8 · analyzer v33 · 15h ago

skills & prompt files 4

code evidence vHEAD · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 204

filesystem 49

  • fs (weak) dialnco-braincontext-cli-53b38b8/scripts/stress/local.mts :9 import { mkdtempSync, readFileSync, rmSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/scripts/stress/remote.mts :12 import { mkdtempSync, readFileSync, rmSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/scripts/stress/worker.mts :13 import { writeFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/commands/file.ts :1 import { readFile } from 'node:fs/promises'
  • fs dialnco-braincontext-cli-53b38b8/src/commands/project.ts :1 import { mkdirSync, rmSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/commands/status.ts :1 import { existsSync, readFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/core/db.ts :1 import { mkdirSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/core/lock.ts :1 import { closeSync, mkdirSync, openSync, readFileSync, rmSync, statSync, writeSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/core/paths.ts :1 import { existsSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/core/registry.ts :1 import { chmodSync, existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/export/store.ts :1 import { readdirSync, readFileSync, rmSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/export/write.ts :1 import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/lib/pkg.ts :1 import { readFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/lib/root.ts :1 import { existsSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/lib/stdin.ts :1 import { readFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/mcp/run.ts :1 import { mkdirSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/skillbundles/parse.ts :1 import { lstatSync, readdirSync, readFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/skillbundles/reconstruct.ts :1 import { chmodSync, mkdirSync, writeFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/skills/index.ts :1 import { existsSync, readdirSync, readFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/skills/install.ts :13 } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/studio/assets.ts :1 import { existsSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/studio/run.ts :1 import { existsSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/studio/server.ts :1 import { existsSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/studio/stores.ts :1 import { mkdirSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/sync/import.ts :1 import { existsSync, readdirSync, readFileSync, writeFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/wiki/drift.ts :2 import { readFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/wiki/export.ts :1 import { mkdirSync, readdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs'
  • fs dialnco-braincontext-cli-53b38b8/src/wiki/import.ts :1 import { readdirSync, readFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/_db.ts :1 import { mkdtempSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/audit.test.ts :1 import { existsSync, mkdirSync, mkdtempSync, rmSync, symlinkSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/concurrency.test.ts :1 import { mkdtempSync, rmSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/export.test.ts :1 import { mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/hardening.test.ts :1 import { existsSync, mkdtempSync, rmSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/lock.test.ts :1 import { existsSync, mkdtempSync, rmSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/online.test.ts :1 import { mkdtempSync, rmSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/query.test.ts :1 import { mkdtempSync, rmSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/registry.test.ts :1 import { mkdtempSync, readFileSync, rmSync, statSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/skill-init.test.ts :10 } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/skillbundle.test.ts :9 } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/skills-docs.test.ts :1 import { existsSync, readdirSync, readFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/studio-api.test.ts :1 import { mkdtempSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/studio-auth.test.ts :1 import { mkdtempSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/studio-files.test.ts :1 import { mkdtempSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/studio-health.test.ts :1 import { mkdtempSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/studio.test.ts :1 import { mkdtempSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/sync.test.ts :1 import { mkdtempSync, readdirSync, readFileSync, rmSync, unlinkSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/tier23.test.ts :1 import { mkdtempSync, rmSync, writeFileSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/transclusion.test.ts :1 import { mkdtempSync, rmSync } from 'node:fs'
  • fs (weak) dialnco-braincontext-cli-53b38b8/test/wikiexport.test.ts :1 import { existsSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs'

shell / exec 3

  • shell (weak) dialnco-braincontext-cli-53b38b8/scripts/stress/local.mts :8 import { spawn } from 'node:child_process'
  • shell (weak) dialnco-braincontext-cli-53b38b8/scripts/stress/remote.mts :11 import { spawn } from 'node:child_process'
  • shell dialnco-braincontext-cli-53b38b8/src/lib/open.ts :5 import { spawn } from 'node:child_process'

network 1

  • net dialnco-braincontext-cli-53b38b8/studio/src/api/client.ts :20 const res = await fetch(`/api${path}`, {

secrets 3

  • secrets (weak) dialnco-braincontext-cli-53b38b8/scripts/stress/remote.mts :27 const TOKEN = process.env.BCTX_RTOKEN ?? ''
  • secrets (weak) dialnco-braincontext-cli-53b38b8/scripts/stress/worker.mts :30 const token = process.env.BCTX_STRESS_TOKEN || undefined
  • secrets dialnco-braincontext-cli-53b38b8/src/core/registry.ts :233 return process.env.BCTX_KEY || undefined

tool registrations 34

  • whoami dialnco-braincontext-cli-53b38b8/src/mcp/server.ts :74
  • search_contexts dialnco-braincontext-cli-53b38b8/src/mcp/server.ts :115
  • get_context dialnco-braincontext-cli-53b38b8/src/mcp/server.ts :132
  • list_contexts dialnco-braincontext-cli-53b38b8/src/mcp/server.ts :146
  • create_context dialnco-braincontext-cli-53b38b8/src/mcp/server.ts :164
  • update_context dialnco-braincontext-cli-53b38b8/src/mcp/server.ts :185
  • delete_context dialnco-braincontext-cli-53b38b8/src/mcp/server.ts :227
  • wiki_search dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :116
  • wiki_get dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :146
  • wiki_new dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :223
  • wiki_datatable_new dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :267
  • wiki_query dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :298
  • wiki_list_properties dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :332
  • wiki_set_prop dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :343
  • wiki_view_new dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :376
  • wiki_update dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :411
  • wiki_patch_section dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :474
  • wiki_replace dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :497
  • wiki_link dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :526
  • wiki_unlink dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :547
  • wiki_ingest dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :568
  • wiki_ingest_status dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :599
  • wiki_verify dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :614
  • wiki_lint dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :647
  • wiki_graph dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :677
  • wiki_related dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :703
  • wiki_path dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :728
  • wiki_table_get dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :768
  • wiki_table_set_cell dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :801
  • wiki_table_add_row dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :829
  • wiki_table_delete_row dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :855
  • wiki_table_add_column dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :881
  • wiki_table_delete_column dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :921
  • wiki_table_rename_column dialnco-braincontext-cli-53b38b8/src/mcp/wiki-tools.ts :946

install hooks 1

  • prepublishOnly dialnco-braincontext-cli-53b38b8/package.json :56 npm run typecheck && npm run typecheck:studio && npm run lint && npm run test && npm run build && npx publint

declared dependencies 26

  • @modelcontextprotocol/sdk@^1.29.0
  • @aws-sdk/client-s3@^3.1080.0
  • @aws-sdk/s3-request-presigner@^3.1080.0
  • @hono/node-server@^2.0.6
  • @libsql/client@^0.17.4
  • @libsql/kysely-libsql@^0.4.1
  • commander@^15.0.0
  • hono@^4.12.27
  • kysely@^0.29.2
  • ulidx@^2.4.1
  • yaml@^2.9.0
  • zod@^4.4.3
  • @biomejs/biome@^2.5.1
  • @types/node@^26.0.1
  • @types/react@^19.2.17
  • @types/react-dom@^19.2.3
  • @vitejs/plugin-react@^6.0.3
  • jsdom@^29.1.1
  • publint@^0.3.21
  • react@^19.2.7
  • react-dom@^19.2.7
  • tsup@^8.5.1
  • tsx@^4.22.4
  • typescript@^6.0.3
  • vite@^8.1.0
  • vitest@^4.1.9