Local-first command center for agentic engineers — the CLI + Raycast hub and front door to the Ashlr dev-tool ecosystem.
Drift inferred · capture-to-capture
- HIGH code analysis flagged dynamic code execution in ashlrai/ashlr-hub
transport stdio · http counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 18a6026 · analyzer v28 · 1d ago
danger signals7
- dynamic code execution new Function() ashlrai-ashlr-hub-18a6026/test/m213.dashboard-sse.test.ts :580
const helpers = new Function( - suspicious endpoint api.telegram.org ashlrai-ashlr-hub-18a6026/src/cli/comms.ts :547
const url = `https://api.telegram.org/bot${token}/getUpdates`; - suspicious endpoint api.telegram.org ashlrai-ashlr-hub-18a6026/src/core/integrations/telegram.ts :123
return `https://api.telegram.org/bot${token}/${method}`; - suspicious endpoint api.telegram.org ashlrai-ashlr-hub-18a6026/test/m147.telegram-comms.test.ts :352
_mockHttpError = new Error(`request to https://api.telegram.org/bot${BOT_TOKEN}/sendMessage failed`); - suspicious endpoint discord.com ashlrai-ashlr-hub-18a6026/test/m18.notify.test.ts :57
const FAKE_DISCORD_URL = 'https://discord.com/api/webhooks/000000000/FAKE_DISCORD_TOKEN_PLACEHOLDER'; - over-broad OAuth scope site_admin ashlrai-ashlr-hub-18a6026/src/core/integrations/github.ts :1297
'site_admin', - over-broad OAuth scope site_admin ashlrai-ashlr-hub-18a6026/test/m429.judge-free-remote-policy.test.ts :1454
owner: { id: 330, login: 'acme', description: null, site_admin: false },
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 991
filesystem 128
- fs ashlrai-ashlr-hub-18a6026/src/cli/automerge-canary.ts :10
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/comms.ts :30
import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/dashboard.ts :33
import * as fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/demo-sandbox.ts :43
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/eval-swe-bench.ts :40
import * as fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/fleet.ts :28
import { readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/goal.ts :21
import { realpathSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/index.ts :43
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/invent.ts :11
import { existsSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/mcp.ts :14
import { readFileSync, writeFileSync, existsSync, copyFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/new.ts :25
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/update.ts :34
import { existsSync, readlinkSync, lstatSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/cli/verify-safety.ts :42
import { readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/autonomy/evidence-pack.ts :26
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/build-identity.ts :1
import { readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/classify.ts :10
import fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/comms/director-context.ts :16
import { readFileSync, existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/comms/dispatch.ts :19
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/comms/pause.ts :14
import { existsSync, mkdirSync, readFileSync, writeFileSync, rmSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/comms/requests.ts :23
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/config.ts :24
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/daemon/activity.ts :26
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/daemon/cutoff-checkpoint-scheduler.ts :19
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/daemon/guard-health.ts :8
import { accessSync, constants, existsSync, statSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/daemon/launchd-plist-transaction.ts :2
import * as fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/daemon/loop.ts :37
import { existsSync, lstatSync, readdirSync, unlinkSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/daemon/service.ts :17
import * as fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/daemon/state.ts :23
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/digest/store.ts :24
import { existsSync, mkdirSync, readFileSync, readdirSync, renameSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/doctor-fix.ts :21
import { existsSync, mkdirSync, symlinkSync, lstatSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/doctor.ts :8
import { existsSync, readFileSync, statSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/ecosystem/doctor.ts :9
import { existsSync, readdirSync, readFileSync, statSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/ecosystem/focus.ts :9
import { existsSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/ecosystem/map.ts :21
import { existsSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/effective-config.ts :8
import { existsSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/eval/attention-store.ts :1
import { existsSync, mkdirSync, readdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/eval/swe-bench.ts :24
import * as fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fabric/cache/store.ts :31
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fabric/claude-rate-limit-event.ts :18
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fabric/claude-usage.ts :44
import * as fs from 'fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fabric/gateway-shadow.ts :20
import { existsSync, mkdirSync, appendFileSync, readdirSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fabric/resource-monitor.ts :37
import * as fs from 'fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/agent-action-ledger.ts :23
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/automerge-canary-observer.ts :3
import { realpathSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/automerge-canary-store.ts :19
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/best-of-n-ledger.ts :23
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/counterfactual.ts :41
import { existsSync, mkdirSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/cutoff-observation-checkpoints.ts :26
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/decisions-ledger.ts :26
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/dispatch-manifest.ts :24
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/dispatch-production-ledger.ts :28
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/engine-readiness.ts :17
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/enrollment-cutoff-snapshot.ts :13
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/generated-repair-lifecycle.ts :18
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/judge-trace.ts :31
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/local-store-lock.ts :20
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/manager.ts :19
import { existsSync, mkdirSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/model-racing.ts :24
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/monitoring-cursor.ts :18
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/outcome-watcher.ts :24
import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/oversight-export.ts :5
import { existsSync, readdirSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/post-merge-observations.ts :24
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/post-merge-stability-observer.ts :1
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/post-merge-stability.ts :23
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/prompt-optimizer.ts :30
import { existsSync, mkdirSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/proposal-repair-work.ts :4
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/quota.ts :27
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/regression-sentinel.ts :43
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/repair-handoff-journal.ts :19
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/resolution-observer.ts :25
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/resolution-witness-ledger.ts :23
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/self-heal-queue-prune.ts :2
import { existsSync, readFileSync, renameSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/self-heal.ts :26
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/self.ts :24
import { readFileSync, existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/shared-store.ts :37
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/skill-records.ts :23
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/status.ts :18
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/fleet/worked-ledger.ts :36
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/foundry/provenance.ts :53
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/generative/invent-cycle.ts :30
import { existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/generative/invent.ts :13
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/genome/consolidate.ts :22
import fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/genome/export.ts :15
import fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/genome/store.ts :17
import fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/git.ts :12
import { existsSync, statSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/goal-loop/parse.ts :17
import { readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/goal-loop/runner.ts :28
import { readFileSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/goal-loop/state.ts :14
import { mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/goals/advance.ts :42
import { realpathSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/goals/store.ts :28
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/apply.ts :25
import { existsSync, mkdirSync, writeFileSync, unlinkSync, realpathSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/merge.ts :100
import { existsSync, mkdirSync, writeFileSync, unlinkSync, symlinkSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/operational-projection-replay-ledger.ts :2
import { lstatSync, mkdirSync, readdirSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/operational-projection-transaction.ts :2
import { lstatSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/operational-projection.ts :7
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/proposal-mutation-lock.ts :2
import { chmodSync, existsSync, lstatSync, mkdirSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/realized-merge.ts :3
import { realpathSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/remote-handoff-attestation.ts :5
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/remote-handoff.ts :8
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/inbox/store.ts :36
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/index-engine.ts :22
import fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/dep-parser.ts :45
import { existsSync, readFileSync, statSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/editors.ts :24
import { readFileSync, writeFileSync, existsSync, copyFileSync, mkdirSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/imessage.ts :30
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/markdown.ts :26
import { mkdirSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/pulse-exporter.ts :45
import { lstatSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/pulse-sync.ts :45
import { lstatSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/stack.ts :15
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/telegram.ts :25
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/integrations/vercel.ts :16
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/knowledge/graph.ts :20
import fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/knowledge/index.ts :19
import fs from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/learn/store.ts :30
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/lifecycle/scaffold.ts :20
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/lifecycle/ship.ts :11
import { existsSync, readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/mcp-native-engineer.ts :51
} from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/mcp-registry.ts :11
import { readFileSync, existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/observability/codex-source.ts :20
import * as fs from 'fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/observability/rollup.ts :10
import { existsSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/observability/telemetry-sink.ts :26
import { mkdirSync, appendFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/observability/usage-source.ts :12
import * as fs from "fs"; - fs ashlrai-ashlr-hub-18a6026/src/core/onboard.ts :14
import { existsSync, mkdirSync, symlinkSync, readlinkSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/plugins/host-api.ts :17
import { mkdirSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/plugins/integrity.ts :13
import { readFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/plugins/manifest.ts :17
import { readFileSync, statSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/plugins/registry.ts :22
import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/portfolio/backlog.ts :12
import { existsSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileSync } from 'node:fs'; - fs ashlrai-ashlr-hub-18a6026/src/core/portfolio/queued-autonomy.ts :19
} from 'node:fs';
shell / exec 50
- shell ashlrai-ashlr-hub-18a6026/src/cli/dashboard.ts :34
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/cli/demo-sandbox.ts :36
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/cli/doctor-init.ts :312
const { spawnSync } = await import('node:child_process'); - shell ashlrai-ashlr-hub-18a6026/src/cli/invent.ts :68
const { execSync } = await import('node:child_process'); - shell ashlrai-ashlr-hub-18a6026/src/cli/new.ts :24
import { execSync, execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/cli/open.ts :4
* All launchers use spawn (detached, unref'd) so the CLI process exits - shell ashlrai-ashlr-hub-18a6026/src/cli/picker.ts :12
import { execFileSync, spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/cli/pulse.ts :782
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/cli/serve.ts :104
const { spawn } = await import('child_process'); - shell ashlrai-ashlr-hub-18a6026/src/cli/update.ts :33
import { spawnSync, execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/daemon/activity.ts :8
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/daemon/cutoff-checkpoint-child.ts :1
import { spawn, type SpawnOptions } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/daemon/cutoff-checkpoint-scheduler.ts :1
import { spawn, type SpawnOptions } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/daemon/resolution-observer-scheduler.ts :1
import { spawn, type SpawnOptions } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/daemon/service.ts :18
import { execFileSync, spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/dashboard.ts :19
* runs execFileSync('curl', ...) with a ~2.5s timeout — a synchronous child - shell ashlrai-ashlr-hub-18a6026/src/core/doctor.ts :11
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/ecosystem/doctor.ts :10
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/eval/swe-bench.ts :27
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/fabric/cache/key.ts :12
* SAFETY: pure functions, zero runtime deps (node:crypto + node:child_process). - shell ashlrai-ashlr-hub-18a6026/src/core/fleet/automerge-canary-observer.ts :2
import { spawn } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/fleet/automerge-canary.ts :1
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/fleet/engine-readiness.ts :16
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/fleet/enrollment-cutoff-snapshot.ts :1
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/fleet/local-store-lock.ts :2
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/fleet/post-merge-window.ts :1
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/fleet/regression-sentinel.ts :35
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/generative/invent-cycle.ts :189
const { execSync } = await import('node:child_process'); - shell ashlrai-ashlr-hub-18a6026/src/core/genome/store.ts :21
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/git.ts :11
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/inbox/apply.ts :24
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/inbox/merge.ts :99
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/inbox/realized-merge.ts :1
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/inbox/remote-handoff.ts :9
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/desktop-notify.ts :6
* nothing fires. Uses execFile (never a shell) on all platforms, with - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/github.ts :11
* - All spawns use spawnSync (no shell) with a tight timeout. - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/identity.ts :14
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/imessage.ts :5
* sendIMessage(text, cfg) — osascript send via execFile (never a shell) - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/markdown.ts :25
import { execFileSync, spawn } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/phantom.ts :41
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/secrets.ts :23
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/stack.ts :14
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/integrations/vercel.ts :15
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/lifecycle/scaffold.ts :14
import { execSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/lifecycle/ship.ts :13
import { spawnSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/mcp-native-engineer.ts :657
return new RegExp(`^${re}$`); - shell ashlrai-ashlr-hub-18a6026/src/core/observability/rollup.ts :9
import { execFileSync } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/observability/telemetry-sink.ts :27
import { spawnSync, spawn } from 'node:child_process'; - shell ashlrai-ashlr-hub-18a6026/src/core/onboard.ts :425
const { execFileSync } = await import('node:child_process'); - shell ashlrai-ashlr-hub-18a6026/src/core/phantom.ts :9
import { spawnSync } from 'node:child_process';
network 16
- net ashlrai-ashlr-hub-18a6026/src/core/comms/director.ts :143
const response = await fetch(url, { - net ashlrai-ashlr-hub-18a6026/src/core/comms/elon-dialogue.ts :100
const response = await fetch(url, { - net ashlrai-ashlr-hub-18a6026/src/core/fabric/resource-monitor.ts :40
import * as http from 'http'; - net ashlrai-ashlr-hub-18a6026/src/core/fabric/usage-api.ts :117
resp = await fetch(USAGE_ENDPOINT, { - net ashlrai-ashlr-hub-18a6026/src/core/fleet/counterfactual.ts :425
// Over-fetch (cap * 3) so we still hit `cap` replays after diff-less skips. - net ashlrai-ashlr-hub-18a6026/src/core/fleet/manager.ts :825
const response = await fetch(url, { - net ashlrai-ashlr-hub-18a6026/src/core/fleet/oversight-export.ts :224
const res = await fetch(url, { - net ashlrai-ashlr-hub-18a6026/src/core/fleet/pulse-export.ts :455
const res = await fetch(url, { - net ashlrai-ashlr-hub-18a6026/src/core/genome/playbook.ts :131
const tagsRes = await fetch(`${ollamaBase}/api/tags`, { - net ashlrai-ashlr-hub-18a6026/src/core/genome/recall.ts :116
const res = await fetch(`${ollamaBase.replace(/\/+$/, '')}/api/tags`, { - net ashlrai-ashlr-hub-18a6026/src/core/integrations/notify.ts :59
const res = await fetch(url, { - net ashlrai-ashlr-hub-18a6026/src/core/integrations/pulse-exporter.ts :272
return await fetch(url, { - net ashlrai-ashlr-hub-18a6026/src/core/knowledge/ask.ts :105
const res = await fetch(`${ollamaBase.replace(/\/+$/, '')}/api/tags`, { - net ashlrai-ashlr-hub-18a6026/src/core/knowledge/index.ts :312
const res = await fetch(`${ollamaBase.replace(/\/+$/, '')}/api/tags`, { - net ashlrai-ashlr-hub-18a6026/src/core/observability/limits.ts :127
return await fetch(url, { ...init, signal: ac.signal }); - net ashlrai-ashlr-hub-18a6026/src/core/observability/telemetry-sink.ts :233
res = await fetch(endpoint, {
secrets 6
- secrets ashlrai-ashlr-hub-18a6026/src/cli/comms.ts :238
console.log(` bot_token: ${cfg.comms?.telegram?.botToken ? '(set)' : process.env['TELEGRAM_BOT_TOKEN'] ? '(set via env)' : '(unset)'}`); - secrets ashlrai-ashlr-hub-18a6026/src/core/fabric/usage-api.ts :71
const t = process.env['CLAUDE_CODE_OAUTH_TOKEN'] ?? process.env['CLAUDE_BRIDGE_OAUTH_TOKEN']; - secrets ashlrai-ashlr-hub-18a6026/src/core/fleet/engine-readiness.ts :119
if (process.env['CLAUDE_CODE_OAUTH_TOKEN']?.trim()) return 'env-token'; - secrets ashlrai-ashlr-hub-18a6026/src/core/integrations/telegram.ts :101
return cfg.comms?.telegram?.botToken ?? process.env['TELEGRAM_BOT_TOKEN']; - secrets ashlrai-ashlr-hub-18a6026/src/core/observability/limits.ts :280
const anthropicKey = process.env['ANTHROPIC_API_KEY'] ?? ''; - secrets ashlrai-ashlr-hub-18a6026/src/core/observability/telemetry-sink.ts :86
if (process.env['ASHLR_PULSE_TOKEN'] !== undefined && process.env['ASHLR_PULSE_TOKEN'] !== '') {
install hooks 2
- prepublishOnly ashlrai-ashlr-hub-18a6026/package.json :62
npm run typecheck && npm run lint && npm run test:ci - prepack ashlrai-ashlr-hub-18a6026/package.json :63
npm run build
declared dependencies 12
- @modelcontextprotocol/sdk@^1.29.0
- @types/node@^22.0.0
- eslint@^9.0.0
- tsx@^4.0.0
- typescript@^5.5.0
- typescript-eslint@^8.61.0
- vitest@4.1.10
- tauri-build@2
- tauri-plugin-shell@2
- tauri-plugin-updater@2
- serde@1
- serde_json@1
obfuscation 9
- dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m117.api-model-dispatch.test.ts :125
const { engineInstalled } = await import('../src/core/run/engines.js?bust1=' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m142.best-of-n.test.ts :119
const mod = await import('../src/core/run/best-of-n.js?export=' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m144.llama-server.test.ts :93
const { engineInstalled } = await import('../src/core/run/engines.js?bust-ls-' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m166.model-racing.test.ts :143
const mod = await import('../src/core/fleet/model-racing.js?export=' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m183.taste-critic.test.ts :202
const { scoreTaste } = await import('../src/core/fleet/taste-critic.js?' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m191.red-team.test.ts :159
const { redTeamProposal } = await import('../src/core/fleet/red-team.js?' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m333.best-of-n-multimodel.test.ts :254
const mod = await import('../src/core/run/best-of-n.js?m333=' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m391.execution-lifecycle-authority.test.ts :383
const isolated = await import('../src/core/swarm/runner.js?m391=' + randomUUID()); - dynamic require()/import() ashlrai-ashlr-hub-18a6026/test/m425.policy-startup-recovery.test.ts :116
const { recoverEnrollmentRegistry } = await import(${JSON.stringify(policyModuleUrl)});