repo-dev

Documents the Archimedes repo's conda environment, hermetic pytest conventions, merge-commit branch policy, and CI quality gates.

17|3|Updated May 12, 2026
One-click install
npx skills add https://github.com/aprin-labs/archimedes --skill repo-dev-aprin-labs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: repo-dev
Source: https://github.com/aprin-labs/archimedes/tree/main/skills/repo-dev
Command: npx skills add https://github.com/aprin-labs/archimedes --skill repo-dev-aprin-labs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Developers and agents working in the Archimedes repository hit recurring friction: Node and Python both live in a single conda env that is not on the base PATH, tests pass in CI but fail locally due to environment leakage, and the repo enforces a merge-commit-only branch policy that differs from common GitHub defaults. This Skill consolidates those operational rules so code is written, tested, and merged correctly the first time. ## Core Features & Use Cases - Environment setup: Explains that the archimedes conda env carries both Python and Node, and how to prepend its bin directory for non-interactive shells. - Hermetic test discipline: Codifies rules for writing tests with no .env dependence, no live Redis/Postgres, boundary mocking, and the exact env -i gate command reviewers run. - Branch and CI policy: Documents merge-commit-only merging, branch naming, commit message conventions, and which CI gates (ruff, pytest) actually block a PR. - Use Case: An agent starting work in the repo reads this Skill first, activates the env correctly, runs pytest -m "not integration" matching CI, and opens a PR that passes the quality gate without a failed CI round-trip. ## Quick Start Read this Skill before writing or running any code in the Archimedes repository, then follow its environment, testing, and merge instructions for your task.

Frequently Asked Questions about repo-dev

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run the tests in the Archimedes repo?

Run pytest from the repo root inside the archimedes conda env; pytest.ini sets pythonpath=backend and testpaths=backend/tests. CI uses pytest -m "not integration" for tests needing no database or Redis, and analytics-engine has a separate suite run with uv run pytest.

Why is node or npm not found in this repo's shell?

Node and npm come from the archimedes conda env, not the base shell PATH. For non-interactive shells, prepend the env bin directory with export PATH="$(conda info --base)/envs/archimedes/bin:$PATH" instead of trying conda activate.

Why does pytest pass in CI but fail locally?

Local failures usually come from environment leakage, such as a loaded .env file or live Redis/Postgres services. The repo requires hermetic tests verified with env -i HOME=$HOME PATH=$PATH PYTHONPATH=backend python -m pytest, and forbids skip-marking flaky tests.

What branch strategy does this repo use for pull requests?

The repo uses merge commits only, with main as the sole long-lived deploy branch. Squash and rebase merges are disabled in repo settings, branches follow the <discord-handle>/<short-name> naming pattern, and force-pushing main is forbidden.

Which CI checks actually block a pull request?

The quality-gate.yml workflow hard-blocks on pytest -m "not integration" plus a narrow ruff gate (ruff format --check and ruff check --select E9,F63,F7,F40,F82). Broader ruff checks, UI lint, and the complexity gate are informational only and never block merging.

What topics does this development guide not cover?

It excludes API-level generate/verdict details, passport field semantics, the x402 marketplace payment protocol, and AWS infrastructure operations. Those are covered by sibling skills and the operations runbook under docs/runbooks.