tacit

github.com/BayramAnnakov/tacit

2025-12-22 ~ 2026-02-16 · 56 days

Pure vibe coding

Vibe-coded a self-documenting AI system that died of self-reflection

Born from an AI prompt, died documenting its own birth

Death Type

Vibe-Coded Casualty

Tacit was a pure 'vibe-coded casualty', explicitly 'Built with Opus 4.6' and designed to generate its own CLAUDE.md documentation. It prioritized defining '16 Claude Agents' and '20 MCP Tools' over external adoption, meticulously evaluating its own capabilities. The intense 5-day development sprint suggests an AI-driven burst rather than sustained human effort.


Cause of Death

1. Hyper-focused AI development sprint

The project saw 37 commits from a solo developer within a mere 5-day active period (2026-02-11 to 2026-02-16). A staggering 76% of these commits landed on weekends, suggesting an intense, uninterrupted burst of 'vibe-coding'.

2. Self-documentation obsession

Significant effort went into generating CLAUDE.md and managing evaluation results. tacit/backend/eval_v2_results.json had +2637 lines added, indicating meticulous self-assessment for a project with no external users.

3. An army of AI agents, no war to fight

The project defined '16 Claude Agents' in agents.py and '20 MCP Tools' in tools.py, a robust infrastructure explicitly 'Built with Opus 4.6' for a system that ultimately documented only itself.


Vibe Score

85/ 100

Pure vibe coding


What They Did

Tacit aimed to extract 'tacit team knowledge' from GitHub PRs, CI failures, and Claude Code conversations to generate self-documenting CLAUDE.md and .claude/rules/ files. It was a dual-architecture beast, with a Python FastAPI backend and a SwiftUI macOS frontend, leveraging '16 defined AI agents' and '20 MCP tools' for a '4-phase knowledge extraction pipeline'.

PythonFastAPISwiftUIaiosqlitepydanticuvicornhttpxclaude-agent-sdkmcpwebsockets

Burnout Analysis

Solo developer Bayram Annakov committed 37 times in just 5 active days (2026-02-11 to 2026-02-16), with 76% of commits occurring on weekends. Commit messages went from extensive 'Vision' documentation to a final 'Fix critical SwiftUI bugs...' (27 chars). Despite a low burnout score of 15/100, the intense burst and abrupt halt suggest a rapid, AI-assisted development cycle that exhausted its immediate 'vibe'.


Dependency Archaeology

Tacit boasts 30 pinned dependencies, including claude-agent-sdk==0.1.34 and mcp==1.26.0, indicating a highly specific and AI-centric toolchain. These packages, along with aiosqlite==0.22.1 and websockets==16.0, formed the backbone of a system designed to document itself for a potential audience of 0 human users. It was a well-equipped ghost town.


Autopsy: File Structure

├──.claude/CLAUDE.mdThe project's self-generated documentation, more comprehensive than any human README.
├──pyproject.tomlThe project's manifest, outlining its Python >=3.10 ambition and core AI dependencies.
├──tacit/requirements.txtA full list of 30 pinned dependencies, a toolkit for a project that barely lived.
├──tacit/backend/eval_v2_results.jsonThe graveyard of +2637 lines of evaluation data, proving its capabilities to nobody.
├──tacit/backend/eval_v2.pyWhere the 'v2: 8 capability evals' were meticulously implemented (+1623 lines), ensuring it worked flawlessly in isolation.
├──tacit/backend/pipeline.pyThe 'Extraction orchestrator', a complex 4-phase system for a knowledge base that never grew.
├──tacit/backend/agents.pyHome to 16 AgentDefinition dataclasses, a robust AI army with no war to fight.
└──tacit/backend/tools.pyDefines 20 MCP tools, a fully equipped workshop for a ghost town.

Eulogy Stats

Total Commits
37
Ambitious Adjectives
6
Deploy Config
No
Estimated Users
0 (excluding 16 AI agents)

Last Words

The final commit, 'Fix critical SwiftUI bugs...', arrived on 2026-02-16, a mere 27 characters. It was a dying gasp from the frontend, after the backend's AI agents had finished their self-documentation.

Perhaps next time, focus on human users before AI self-documentation becomes the project's sole purpose.

Pure vibe codingVibe-coded a self-documenting AI system that died of self-reflection

Share on X
tacit — Killed by Vibe