ByteRover's CLI
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · http counts 2 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
brv-curate
-
brv-query
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 1052ac1 · analyzer v33 · 2w ago
skills & prompt files 4
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 1900
filesystem 257
- fs (weak) campfirein-byterover-cli-1052ac1/scripts/migrate-frontmatter-complete.ts :12
import {readdirSync, readFileSync, statSync, writeFileSync} from 'node:fs' - fs (weak) campfirein-byterover-cli-1052ac1/scripts/prepare-ui-submodule-links.mjs :1
import {constants} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/blob/file-blob-storage.ts :2
import * as fs from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/environment/environment-context-builder.ts :1
import fs from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/file-system/file-system-service.ts :3
import fs from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/file-system/gitignore-filter.ts :2
import fs from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/file-system/glob-utils.ts :1
import fs from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/file-system/path-validator.ts :1
import { realpathSync } from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/folder-pack/folder-pack-service.ts :1
import fs from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/llm/generators/byterover-content-generator.ts :17
// import {appendFileSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/llm/tool-output-processor.ts :13
import { existsSync, promises as fsPromises, mkdirSync } from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/map/abstract-queue.ts :1
import {appendFileSync} from 'node:fs'
show 28 more
- fs campfirein-byterover-cli-1052ac1/src/agent/infra/map/agentic-map-service.ts :2
import {writeFile} from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/map/llm-map-service.ts :1
import {writeFile} from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/map/map-shared.ts :3
import {realpathSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/session/session-metadata-store.ts :12
import * as fs from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/storage/file-key-storage.ts :2
import * as fs from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/adapters/gbrain-adapter.ts :2
import {existsSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/adapters/local-markdown-adapter.ts :2
import {existsSync, readdirSync, readFileSync, statSync, writeFileSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/adapters/memory-wiki-adapter.ts :2
import {existsSync, mkdirSync, readdirSync, readFileSync, statSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/adapters/obsidian-adapter.ts :2
import {existsSync, readdirSync, readFileSync, statSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/config/swarm-config-loader.ts :2
import {readFileSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/validation/config-validator.ts :2
import {existsSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/wizard/provider-detector.ts :1
import {existsSync, readdirSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/system-prompt/contributors/agent-prompt-contributor.ts :2
import fs from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/system-prompt/contributors/companion-contributor.ts :2
import fs from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/system-prompt/contributors/context-tree-structure-contributor.ts :1
import type {Dirent} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/system-prompt/contributors/file-contributor.ts :2
import fs from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/system-prompt/prompt-cache.ts :1
import fs from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/system-prompt/system-prompt-manager.ts :2
import fs from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/tools/implementations/expand-knowledge-tool.ts :1
import {readFile} from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/tools/implementations/ingest-resource-tool.ts :1
import {realpath} from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/tools/implementations/search-knowledge-service.ts :2
import {realpath} from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/tools/tool-description-loader.ts :1
import fs from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/tools/write-guard.ts :1
import {realpathSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/agent/infra/validation/workspace-validator.ts :1
import {existsSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/oclif/commands/debug.ts :18
import {existsSync, readdirSync, statSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/oclif/commands/dream/finalize.ts :5
import {readFile, stat} from 'node:fs/promises' - fs campfirein-byterover-cli-1052ac1/src/oclif/commands/mcp.ts :3
import {appendFileSync, mkdirSync} from 'node:fs' - fs campfirein-byterover-cli-1052ac1/src/oclif/commands/restart.ts :10
import {readdirSync, readFileSync, unlinkSync} from 'node:fs'
217 more not shown — this panel samples each group; the count above is the real total.
shell / exec 21
- shell campfirein-byterover-cli-1052ac1/src/agent/core/domain/process/types.ts :1
import type { ChildProcess } from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/agent/infra/file-system/file-system-service.ts :2
import {spawn} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/agent/infra/process/process-service.ts :1
import {type ChildProcess, spawn} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/adapters/gbrain-adapter.ts :1
import {execFile, execFileSync} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/swarm-coordinator.ts :1
import {execFile as execFileCb} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/agent/infra/swarm/validation/config-validator.ts :1
import {execFile} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/oclif/commands/restart.ts :9
import {spawnSync} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/oclif/commands/vc/merge.ts :2
import {execSync} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/oclif/hooks/init/block-command-update-npm.ts :3
import {execSync} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/oclif/hooks/init/update-notifier.ts :4
import {execSync, spawn} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/oclif/hooks/postrun/after-update.ts :3
import {spawn} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/server/core/interfaces/agent/i-agent-pool.ts :29
* Each agent is a separate Node.js process (child_process.fork())
show 9 more
- shell campfirein-byterover-cli-1052ac1/src/server/infra/daemon/agent-pool.ts :4
* Each agent is a separate Node.js process (child_process.fork()) - shell campfirein-byterover-cli-1052ac1/src/server/infra/daemon/agent-process.ts :4
* Each agent runs in its own Node.js process (child_process.fork()) - shell campfirein-byterover-cli-1052ac1/src/server/infra/daemon/brv-server.ts :27
import {fork, type StdioOptions} from 'node:child_process' - shell campfirein-byterover-cli-1052ac1/src/server/infra/transport/handlers/locations-handler.ts :1
import {spawn} from 'node:child_process' - shell (weak) campfirein-byterover-cli-1052ac1/test/hooks/init/update-notifier.test.ts :263
expect(isNpmGlobalInstall(execSyncStub as unknown as typeof import('node:child_process').execSync)).to.be.true - shell (weak) campfirein-byterover-cli-1052ac1/test/unit/agent/types/process/types.test.ts :1
import type {ChildProcess} from 'node:child_process' - shell (weak) campfirein-byterover-cli-1052ac1/test/unit/core/domain/entities/task-history-entry.test.ts :2
import {execFileSync} from 'node:child_process' - shell (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/executor/curate-executor.test.ts :59
// What the LLM would write in code-exec (hyphens → underscores, valid JS identifier) - shell (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/executor/query-executor.test.ts :157
// What the LLM would write in code-exec (hyphens → underscores, valid JS identifier)
network 35
- net campfirein-byterover-cli-1052ac1/src/agent/infra/llm/providers/openai.ts :30
return globalThis.fetch(input, init) - net campfirein-byterover-cli-1052ac1/src/agent/infra/llm/retry/retry-with-backoff.ts :338
* (url: string) => fetch(url).then(r => r.json()), - net campfirein-byterover-cli-1052ac1/src/server/core/domain/transport/schemas.ts :280
// Single-task detail fetch (M2.09) - net campfirein-byterover-cli-1052ac1/src/server/core/interfaces/services/i-git-service.ts :161
fetch(params: FetchGitParams): Promise<void> - net campfirein-byterover-cli-1052ac1/src/server/infra/auth/oauth-service.ts :2
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/auth/oidc-discovery-service.ts :1
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/cogit/http-cogit-push-service.ts :2
import axios from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/git/git-http-wrapper.ts :155
const fetchResponse = await fetch(`${baseUrl}/git-upload-pack`, { - net campfirein-byterover-cli-1052ac1/src/server/infra/git/isomorphic-git-service.ts :310
async fetch(params: FetchGitParams): Promise<void> { - net campfirein-byterover-cli-1052ac1/src/server/infra/http/authenticated-http-client.ts :1
import axios, {type AxiosRequestConfig, isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/http/callback-server.ts :1
import type {Server} from 'node:http' - net campfirein-byterover-cli-1052ac1/src/server/infra/http/models-dev-client.ts :9
import axios from 'axios'
show 23 more
- net campfirein-byterover-cli-1052ac1/src/server/infra/http/openrouter-api-client.ts :11
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/http/provider-model-fetchers.ts :17
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/hub/hub-install-service.ts :1
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/hub/hub-registry-service.ts :2
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/provider-oauth/callback-server.ts :1
import type {IncomingMessage, Server, ServerResponse} from 'node:http' - net campfirein-byterover-cli-1052ac1/src/server/infra/provider-oauth/refresh-token-exchange.ts :2
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/provider-oauth/token-exchange.ts :2
import axios, {isAxiosError} from 'axios' - net campfirein-byterover-cli-1052ac1/src/server/infra/transport/handlers/vc-handler.ts :931
await this.gitService.fetch({directory, ref: data.ref, remote}) - net campfirein-byterover-cli-1052ac1/src/server/infra/transport/port-utils.ts :1
import {createServer} from 'node:net' - net campfirein-byterover-cli-1052ac1/src/server/infra/transport/socket-io-transport-server.ts :2
import {createServer, Server as HttpServer, type RequestListener} from 'node:http' - net campfirein-byterover-cli-1052ac1/src/server/infra/webui/webui-server.ts :3
import {createServer, type Server as HttpServer} from 'node:http' - net campfirein-byterover-cli-1052ac1/src/webui/lib/transport.ts :24
const response = await fetch('/api/ui/config') - net (weak) campfirein-byterover-cli-1052ac1/test/learning/http/local-server.test.ts :3
import {Server} from 'node:http' - net (weak) campfirein-byterover-cli-1052ac1/test/unit/agent/http/internal-llm-http-service.test.ts :1
import {isAxiosError} from 'axios' - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/http/authenticated-http-client.test.ts :1
import {isAxiosError} from 'axios' - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/http/callback-handler.test.ts :50
await fetch(`http://localhost:${port}/callback?code=${internalCode}&state=${internalState}`) - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/http/callback-server.test.ts :42
await fetch(`http://localhost:${port}/callback?code=${internalCode}&state=${internalState}`) - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/http/provider-model-fetchers.test.ts :1
import axios from 'axios' - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/provider-oauth/callback-server.test.ts :50
await fetch(`http://localhost:${port}/auth/callback?code=auth-code&state=test-state`) - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/transport/port-utils.test.ts :2
import {createServer, Server} from 'node:net' - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/user/http-user-service.test.ts :1
import {isAxiosError} from 'axios' - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/webui/webui-middleware.test.ts :3
import {createServer, get as httpGet, type Server as HttpServer, type IncomingMessage} from 'node:http' - net (weak) campfirein-byterover-cli-1052ac1/test/unit/infra/webui/webui-server.test.ts :3
import {createServer} from 'node:http'
tool registrations 2
- brv-curate campfirein-byterover-cli-1052ac1/src/server/infra/mcp/tools/brv-curate-tool.ts :176
- brv-query campfirein-byterover-cli-1052ac1/src/server/infra/mcp/tools/brv-query-tool.ts :53
install hooks 2
- prepack campfirein-byterover-cli-1052ac1/package.json :219
npm run build && BRV_ENV=production oclif manifest - prepare campfirein-byterover-cli-1052ac1/package.json :220
husky
declared dependencies 123
- @modelcontextprotocol/sdk@1.26.0
- @ai-sdk/anthropic@^2.0.60
- @ai-sdk/cerebras@^1.0.11
- @ai-sdk/cohere@^2.0.0
- @ai-sdk/deepinfra@^1.0.35
- @ai-sdk/google@^2.0.52
- @ai-sdk/groq@^2.0.34
- @ai-sdk/mistral@^2.0.27
- @ai-sdk/openai@^2.0.89
- @ai-sdk/openai-compatible@^1.0.32
- @ai-sdk/perplexity@^2.0.0
- @ai-sdk/togetherai@^1.0.12
show 28 more
- @ai-sdk/vercel@^1.0.33
- @ai-sdk/xai@^2.0.57
- @anthropic-ai/sdk@^0.70.1
- @campfirein/brv-transport-client@github:campfirein/brv-transport-client#1.1.0
- @campfirein/byterover-packages@github:campfirein/byterover-packages#main
- @codemirror/lang-html@^6.4.11
- @codemirror/lang-markdown@^6.5.0
- @codemirror/theme-one-dark@^6.1.3
- @codemirror/view@^6.42.1
- @google/genai@^1.29.0
- @inkjs/ui@^2.0.0
- @inquirer/prompts@^7.9.0
- @oclif/core@^4
- @oclif/plugin-help@^6
- @oclif/plugin-update@^4.7.19
- @openrouter/ai-sdk-provider@^1.5.4
- @socket.io/admin-ui@^0.5.1
- @tanstack/react-query@^5.90.20
- @types/react-syntax-highlighter@^15.5.13
- @uiw/react-codemirror@^4.25.9
- ai@^5.0.129
- axios@1.16.0
- chalk@^5.6.2
- date-fns@^4.1.0
- diff@^9.0.0
- dotenv@^17.3.1
- esbuild@^0.27.2
- express@^5.1.0
83 more not shown — this panel samples each group; the count above is the real total.
obfuscation 1
- dynamic require()/import() campfirein-byterover-cli-1052ac1/test/unit/config/environment.test.ts :50
const {ENVIRONMENT} = await import(`../../../src/server/config/environment.js?t=${Date.now()}`)
perm:untrusted 1
- untrusted campfirein-byterover-cli-1052ac1/src/agent/infra/llm/retry/retry-with-backoff.ts :338
* (url: string) => fetch(url).then(r => r.json()),