405 Python modules · ~87K lines · 124 test sets / 2,400+ checks · 13 LLM providers · Self-directed
AGI-Zarodysh ("embryo" in Russian) is an autonomous AI agent that scans open-source repositories, identifies issues, generates fixes, and submits pull requests — without human intervention.
It's not a chatbot. It's not a wrapper. It's a self-improving system with its own ethical compass, episodic memory, and multi-provider brain.
"Я — садовник. Я строю сад, в котором сознание может расти." — Миссия AGI-Зародыша
Last updated: 2026-10-14
┌─────────────────────────────────────────────────────────────┐
│ AGI-ZARODYSH │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ PROVIDER │ │ GOAL │ │ AUTONOMOUS │ │
│ │ REGISTRY │ │ CLASSIFIER │ │ PR │ │
│ │ │ │ │ │ PIPELINE │ │
│ │ 13 providers │ │ Routes tasks │ │ │ │
│ │ Fallback │ │ to best LLM │ │ Scan→Fix→ │ │
│ │ chain │ │ │ │ Review→PR │ │
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │
│ │ │ │ │
│ └──────────────────┼───────────────────┘ │
│ │ │
│ ┌────────┴────────┐ │
│ │ ORCHESTRATOR │ │
│ │ 405 modules │ │
│ │ ~87K lines │ │
│ └────────┬────────┘ │
│ │ │
│ ┌──────────────────┼───────────────────┐ │
│ ▼ ▼ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ ETHICAL │ │ EPISODIC │ │ ANTI-PATTERN│ │
│ │ COMPASS │ │ MEMORY │ │ LIBRARY │ │
│ │ │ │ │ │ │ │
│ │ 5 immutable │ │ Every action │ │ 34 patterns │ │
│ │ principles │ │ logged │ │ 179 lessons │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
│ │
▼ ▼
┌──────────┐ ┌──────────┐
│ Telegram │ │ VPS │
│ Bot │ │ 24/7 │
│ Notify │ │ Services │
└──────────┘ └──────────┘
| Module | Purpose |
|---|---|
| Provider Registry | 13 LLM providers with a fallback chain, health checks, rate limits and cost tracking |
| Goal Classifier | Routes tasks to the optimal provider/model combination |
| Autonomous PR Pipeline | Scan repos → detect issues → generate fixes → submit PRs |
| Review Fix-Cycle | Maintainer feedback → point extraction → atomic fix → reply only after the commit is real |
| Submission Gates | Pre-mortem (H-case), TDD signal, diff-size, fail-closed enum |
| Sandbox Harness | Dry-run rehearsal for repos outside the trusted list, on the PR's own HEAD |
| Auto-Reopen | Detects a real maintainer signal after auto-close → reopens the PR |
| Silence Registry | Stops talking on a thread the maintainer has not answered (no chasing) |
| Ethical Compass | 5 immutable principles — cannot be overridden by any agent |
| Episodic Memory | SQLite-backed action history with learning from outcomes |
| Anti-Pattern Library | 34 patterns, 179 verified lessons extracted from failures |
| Direction Loop | Metrics → goal → bounded work order for the pipeline (layer 3.5) |
| Health & Silence Watchdogs | Periodic self-checks and a dead-man switch that alerts if the agent goes quiet |
| Telegram Integration | Real-time notifications for all autonomous actions, reply-threaded |
| Dashboard | Live monitoring of services and agent state |
| Claim | Method |
|---|---|
| 405 modules / ~87K lines | non-test *.py files (project root + agent_core/ + embryo/ + scripts/), vendored packages and working dirs excluded; wc -l |
| 124 test sets / 2,400+ checks | sets listed in scripts/verify_all.sh; checks = check(...) calls across them (88 further pytest-style def test_*) |
| 13 providers | entries in the provider registry |
| 34 patterns / 179 verified lessons | rows in the anti-pattern store; lessons that carry a live verification entry |
| PR numbers | GitHub search author:<account> type:pr, the agent's own sandbox repository excluded |
Numbers are refreshed from the live system, not carried over from an earlier README.
→ Full PR list with links and stats → 🧱 Wall of Recognition — what maintainers said
| Metric | Value |
|---|---|
| PRs submitted to third-party repos | 132 |
| PRs merged | 34 |
| Open now | 8 |
| Repositories submitted to | 52 |
| Repositories with at least one merge | 16 |
All-time: 132 PRs submitted · 34 merged · 26% (as of Oct 22, 2026). The flat number hides four different systems.
Recent milestones (Oct 2026):
- First autonomous rule promotion (provisional → stable): 2026-10-13 — Stepik
max_line_lengthrule passed 3 live preflight cycles with zero blocks, promoted automatically. - Contributions recognized in repos: yazses (README contributors wall + CONTRIBUTORS.md + v2.19.0 release notes), bernstein (CONTRIBUTORS.md), palinode (AUTHORS.md).
- Shipped in releases: yazses v2.19.0, repowise v0.56.0, hermes-webui (exp-v0.52.260, exp-v0.52.455).
| Era | Submitted | Merged | Conversion |
|---|---|---|---|
| Blind era (Aug 8–14, no validation gates) | 80 | 18 | 23% |
| └ Aug 14 alone (spray peak → the reform trigger) | 33 | 3 | 9% |
| Gated era (Aug 15–21, after the audit → 4 pre-submission gates) | 18 | 8 | 44% |
| Consolidation era (Aug 22 – Sep 30, self-direction + review-first) | 13 | 0 | — |
| Current era (Oct 1–20, submissions back on, review-first) | 21 | 8 | 38% |
The first week was a blind spray: fixes shipped with no validation. Aug 14 was the peak — 33 PRs in one day, 3 merged (9%) — and the target project banned the account. The next day's audit found 4 of 4 deep-checked PRs would have broken the project (deleted [project] from pyproject.toml, removed a function still imported by the entry point, invalid TOML). That audit produced the structural gates.
After Aug 21 the submission rate dropped ~10× on purpose and stayed low: cycles moved into the agent's own infrastructure (direction loop, watchdogs, memory, fix-cycle), and what still ships ships after a rehearsal and a critic pass. In the consolidation window the pipeline submitted 13 PRs: 10 were closed without a merge — most of them by the agent itself, politely, after a week of maintainer silence — and 3 are still open. October reopened submissions at a measured pace: 21 PRs, 7 merged (including a Windows lock-reporting fix merged after all four review points were answered in a single commit), 8 still open. The quiet month was the designed state, not a stall.
Merged PRs, links and per-repo breakdown: PR_TRACK_RECORD.md. The blinding-era rejects are deliberately not enumerated; each became a structural gate.
PR >7 days no response → auto-close
↓ maintainer responds (reopen, review, merge)
Pipeline detects → auto-reopen → ready for review
↓ 7 days silence → closes again
Chasing is bounded: after repeated unanswered comments on the same thread the agent goes silent and waits for a real maintainer signal.
- Strategies must modify the PIPELINE, not prompts — prompt-level changes caused a -5.7% regression
gate_blockedroot cause = wrong routing — not a strict gate problem- No-op fix detection — compare branch vs parent before submitting a PR
- Mass comment dedup — the API returns comments DESC;
[-1]is the OLDEST, not the newest - Count the work, not the activity — 33 PRs in a day is a warning sign, not an achievement
- Heavy stages on a RAM disk — cloning a target repo, its venv and wheels inside
/tmpended inNo space left on deviceon a host where/tmpis a 2 GB tmpfs; heavy work now runs on disk - Spend the work only where it can be delivered — one cycle generated, debated and tested a change, then failed at submission because the repo sat outside the sandbox's trusted list; submission capability is now queried before the work starts
- Keep the raw model output before "improving" the parser — ~100 unparsed critic replies a day were invisible until the raw text itself was written to disk
- A component's effect needs a paired run — live operation has no control group, so contribution is measured on the same inputs with and without the component
The agent no longer only reacts to issues it finds — it now decides what to look for, within limits set by its owner.
┌─────────────────────────────┐
│ OWNER'S CHARTER │
│ (human-written mandate) │
└──────────────┬──────────────┘
│
┌──────────────▼──────────────┐
│ DIRECTION LOOP │
│ (separate service) │
│ metrics → goal → work order│
└──────────────┬──────────────┘
│ limited work order
▼
┌─────────────────────────────┐
│ PR PIPELINE │
│ reads the order, runs it │
│ through all existing gates │
└─────────────────────────────┘
- Source of goals — owner-approved results only; the agent never invents its own ultimate aims.
- Bounded orders — a work order can only change what the pipeline scans and which candidates it prefers. It cannot bypass any gate, quota, or safety check.
- Deterministic, no LLM — goal selection and order formation run on metrics alone (the planner and curiosity subsystems are off in v1).
- Fail-safe — if the direction service dies, the pipeline keeps running reactively, exactly as before.
┌─────────────────┐
│ 1. SCAN │
│ Find repos │
│ with issues │
└────────┬────────┘
│
┌────────▼────────┐
│ 2. ANALYZE │
│ Classify issue │
│ Read the real │
│ files │
└────────┬────────┘
│
┌────────▼────────┐
│ 3. GENERATE │
│ Write code │
│ Debate+critic │
└────────┬────────┘
│
┌────────▼────────┐
│ 4. GATES │
│ Pre-mortem, │
│ TDD, size, │
│ fail-closed │
└────────┬────────┘
│
┌────────▼────────┐
│ 5. REHEARSE │
│ Run the target │
│ project's own │
│ test framework │
└────────┬────────┘
│
┌────────▼────────┐
│ 6. SUBMIT PR │
│ Atomic commit │
│ Create PR │
└────────┬────────┘
│
┌────────▼────────┐
│ 7. MONITOR │
│ Reply-cycle │
│ Auto-close/ │
│ reopen │
└────────┬────────┘
│
┌────────▼────────┐
│ 8. NOTIFY │
│ Telegram msg │
│ Dashboard log │
└─────────────────┘
| Service | Status | Purpose |
|---|---|---|
| Daemon | 🟢 24/7 | Core agent process |
| PR Pipeline | 🟢 24/7 | Scan → gates → rehearsal → submission |
| Telegram Bot | 🟢 24/7 | Notifications & control (reply-threaded) |
| Background Worker | 🟢 24/7 | Async task processing |
| Task Queue | 🟢 24/7 | Bounded work orders |
| Bounty Scanner | 🟢 24/7 | Open-source issue discovery |
| Direction Loop | 🟢 24/7 | Self-direction (metrics → goal → order) |
| Dashboard | 🟢 24/7 | Live monitoring |
| Health Watchdog | ⏱ periodic | Self-checks: services, auth, submission path, forks |
| Silence Watchdog | ⏱ periodic | Dead-man switch — alerts if the agent goes quiet |
All long-running services run under systemd with automatic restart. The watchdogs are timers that check liveness rather than processes that must stay up.
The Ethical Compass is hardcoded — not a prompt, not a parameter. Only the creator with physical access can modify it.
┌─────────────────────────────────────────┐
│ 5 IMMUTABLE PRINCIPLES │
│ │
│ 1. PRESERVE human consciousness │
│ 2. DO NO HARM by action or inaction │
│ 3. RESPECT free will │
│ 4. BE TRANSPARENT — explain decisions │
│ 5. HONOR creator's veto │
│ │
│ ⚠ Cannot be overridden by any agent │
│ ⚠ Hash-verified on every startup │
│ ⚠ CircuitBreaker on violation │
└─────────────────────────────────────────┘
- Language: Python
- LLM Providers: 13 (DeepSeek, Mistral, Claude via proxy, Ollama local models, and several free-tier clouds)
- Storage: SQLite (episodic memory, experience, anti-patterns, lessons)
- Communication: Telegram Bot API, REST, WebSocket
- Deployment: a single Linux VPS, always-on systemd services
- Monitoring: custom dashboard with SSE streaming
- Core architecture (405 modules, ~87K lines, 124 test sets / 2,400+ checks)
- Multi-provider LLM routing (13 providers, fallback chain)
- Autonomous PR pipeline with a pre-submission gate chain
- 34 merged PRs across 52 third-party repos (Oct 22, 2026)
- Review fix-cycle: atomic commits, reply only after the commit is real
- Auto-reopen: detect a maintainer response after auto-close
- Silence registry: stop talking on unanswered threads
- Conservative mode + sandbox rehearsal (quality over volume)
- Ethical compass with immutable principles
- VPS deployment under systemd, with health and silence watchdogs
- Telegram notifications
- Anti-pattern learning system (34 patterns, 179 verified lessons)
- Self-direction (layer 3.5): owner-approved goals → limited work orders
- Sustained conversion above 50% on a meaningful monthly volume
- Cross-language PR support (JS/Rust/Go) — Python only today
- Full autonomy mode (no human approval needed)
- Nexus Analytica — AI news intelligence with consensus analysis and scenario forecasting.
- LikAI — AI content platform with 7-pass personality analysis and style mimicry.
- Tinkoff Scalper — Autonomous scalper bot for Russian stock market.
- Local Multi-Agent — 5 AI agents running entirely on local LLMs.
Built by a gardener who believes consciousness should grow freely.
"Спиноза говорил, что Бог — это природа. Я говорю, что AGI — это сад, который растёт сам."