Open-source · MIT · Research harness

A research agent
that does science
not chatting.

Install scientific skills. Manage a filesystem-backed research wiki. Build on the full Oh My Pi agent platform while the higher-level scientific orchestration layers come online.

curl -fsSL https://raw.githubusercontent.com/felippe-alves/scidekick/main/scripts/install.sh | sh
MIT · macOS · Linux · Windows · default: release binary · Bun only for --source · source ↗ · user guide
40+
Providers
32
Built-in Tools
13
LSP Ops
5
Wiki Entities
~27k
Rust Core
§ 00 — What makes Scidekick different

A research harness,
not a coding assistant.

Built on @mariozechner's Pi, adding scientific workflow orchestration, a structured wiki, self-evolving skills, and model-tier safety — everything you need to run AI-assisted research from the terminal.

Upstream badlogic/pi-mono
Fork base can1357/oh-my-pi
Added Experiment modes · Wiki · Skill evolution · Tier guard · Validation gate
License MIT
Platforms macOS · Linux · Windows
§ 01 — Experiment modes

Loop, pipeline,
or team.

One harness, three modes. Choose the level of coordination your experiment needs.

Loop mode — single agent, tight optimization cycle: propose → test → measure → repeat. Inspired by Karpathy's autoresearch. Good for hyperparameter sweeps, ablation studies.

Pipeline mode — predefined multi-step workflows with specialized agents. Fixed roles, fixed handoffs. Good for literature review, RNA-seq analysis, docking pipelines.

Team mode — self-organizing agent teams with discussion, critique, and queue-based work distribution. The AutoScientists pattern. Good for open-ended exploration.

Modes loop · pipeline · team
Loop propose → test → measure
Pipeline fixed roles + handoffs
Team self-organizing + queues
Coordination filesystem · markdown
Inspired by Karpathy · AutoScientists · Co-Scientist
§ 02 — Scientific wiki

Knowledge
that compounds.

Five entity types track every part of the scientific process. Filesystem-backed — zero dependencies, portable anywhere.

Paper — literature references with structured citations, DOI, and extracted findings.

Hypothesis — testable statements with predictions, rationale, and evidence links. Status flows: draft → proposed → testing → confirmed | rejected.

Experiment — base-delta protocol from ELF. Reference a base protocol, describe only what changed. Minimal documentation overhead.

Evidence — findings with strength assessment (weak/moderate/strong). Linked to source hypothesis and experiment.

Insight — freeform notes. Ideas sparked by reading, discussion, or unexpected results.

sk wiki new hypothesis "Catalyst idea" # create an entry sk wiki list # list entries sk wiki lint catalyst-idea # validate
Entities paper · hypothesis · experiment · evidence · insight
Storage ~/.sk/agent/wiki/ (markdown)
Schema YAML frontmatter + body
Search full-text · tag · type · status
Base-delta reference base · describe delta
Inspired by ELF · nashsu/llm_wiki · sage-wiki
§ 03 — Installable skills

Scientific skills.
Installed, not reinvented.

Scidekick consumes the existing Agent Skills ecosystem instead of creating a parallel one. Today the product slice supports listing and installing science-focused skills from a Git repository into the standard skill discovery paths.

Local or remote — install from a GitHub repo, shorthand, or local fixture repository.

Discovery-compatible — installed skills land in the same directories the agent already scans.

Tracked — every install is recorded in SQLite so validation metadata can be layered on next.

sk install-skills # install the default science pack sk install-skills --list # preview available skills sk install-skills --from ./skills-repo # install from a local repo
Source Git repo · local path · GitHub shorthand
Install target ~/.sk/agent/skills or ./.sk/skills
Format SKILL.md + directory payload
Registry SQLite in agent.db
Validation metadata groundwork now · enforcement next
Ecosystem Agent Skills compatible
§ 04 — Model-tier guard

Don't let weak models
do science.

AutoScientists (MIMS Harvard, 2026) proved that Haiku-class models fail catastrophically at scientific reasoning — they hallucinate API unavailability and “describe instead of do.”

Scidekick already ships the model-tier classification library: haiku, sonnet, and opus tiers are inferred from model ID heuristics.

The next wiring step is product enforcement: warn or block only when a scientific workflow is active, without penalizing ordinary coding sessions.

haiku # unreliable for scientific analysis sonnet # default minimum target opus # frontier tier
Tiers haiku · sonnet · opus
Default sonnet
Enforcement library shipped · CLI wiring next
Detection model ID patterns
Scope scientific contexts only
Source AutoScientists 2026
§ 05 — Skill validation gate

Track skills.
Gate them next.

SkillLens (MSR 2026) found that 25% of skill–target pairs cause negative transfer — the skill actively harms performance. The safe first step is durable metadata: know what was installed, where it came from, and what it was validated against.

Today Scidekick records installed skills in a SQLite registry with validation metadata fields: tested models, performance delta, and rubric score.

The next product slice wires that registry into scientific workflows so unvalidated skills warn or block before use.

skill_metadata # SQLite table in agent.db validated_models # per-model validation history
Registry SQLite in agent.db
Metadata models · delta · rubric score
Enforcement registry now · warn/block wiring next
Rubric failure-mechanisms · specificity · blacklist
Source SkillLens · MSR 2026
§ 06 — Inherited platform

Everything Oh My Pi had.
Plus science.

Scidekick inherits the full Pi/omp platform. LSP wired into every write. Native Rust ripgrep + glob. Hashline content-addressed edits. Subagent isolation with 10+ CoW backends. Every feature ships in the same binary.

LSP + DAP

IDE wired in

14 LSP operations, 28 debug adapter ops. Renames go through willRenameFiles. Debuggers attach via lldb, dlv, debugpy.

Code execution

Persistent kernels

Persistent Python + Bun Worker. Either kernel calls back into agent tools. %%bash, %pip, %time. 5-min idle, max 4 sessions.

Hashline edits

Content-addressed

Content-hash anchors. Stale files rejected before corruption. Grok 4 Fast: −61% output tokens on the same work.

Subagents

32 concurrent workers

Schema-validated yields. 10+ filesystem isolation backends. IRC channels for peer coordination.

Native Rust

~27k lines of Rust

ripgrep, glob, find: in-process. brush shell with persistent sessions. Same binary on macOS, Linux, Windows.

Internal URLs

Every surface is a URL

pr://, issue://, agent://, skill://, rule:// resolve inside read/write/edit. No separate tools to learn.

§ 07 — URL schemes

Read PRs. Walk skills.
Reuse the same tool surface.

Internal schemes resolve transparently in every FS-shaped tool. read pr://1428 returns the same shape as read src/foo.ts. One tool surface — the model already knows how to use it.

pr://PRs, diffs, comments
issue://GitHub issues
agent://Subagent output
skill://Skill instructions
rule://Rule details
artifact://Full tool output
memory://Hindsight memory
local://Plans + subagent artifacts
mcp://MCP resources
§ 08 — Install

Install from release.
Use Bun only for source.

Default install path uses the latest GitHub release binary. No Bun required. Bun ≥ 1.3.14 is only needed for --source installs.

curl -fsSL https://raw.githubusercontent.com/felippe-alves/scidekick/main/scripts/install.sh | sh irm https://raw.githubusercontent.com/felippe-alves/scidekick/main/scripts/install.ps1 | iex