rewrite: refresh all blog posts for public audience

Merged overlapping posts:
- forking-gitea + fork-dont-build → one post about the fork philosophy
- fal-image-generation + image-generation-fal → one post about AI art pipeline

Rewrote all posts with external/public voice:
- Stronger hooks, concrete examples, punchier language
- agentic-workflow: restructured around soul files + skills + numbers
- agent-harness: clearer framing of 'what an agent harness is'
- cloud-harness: tighter narrative about overnight agents
- godot-optimisation: same depth, sharper opening
- pre-commit-agent: clearer architecture, cost breakdown
- studio-cli: reframed around identity/cold-start problem
- blog-visual-upgrade: tightened the restyle story

10 posts total (9 markdown + 1 hand-authored HTML)
This commit is contained in:
2026-06-03 03:06:41 +01:00
parent bf42a76cf9
commit f01036c646
23 changed files with 933 additions and 2546 deletions
+59 -72
View File
@@ -1,103 +1,90 @@
---
title: "How a Small Game Studio Runs on AI Agents"
title: "How a 4-Person Studio Runs on AI Agents"
slug: agentic-workflow
date: "2026-03-06"
description: "Soul files, skill playbooks, and markdown as the universal API. How we built an agentic workflow that lets a 4-person indie studio operate at 10x scale."
description: "We gave AI agents persistent identities, skill playbooks, and access to our entire knowledge base. Here's how four people ship like forty."
og_description: "Soul files, skill playbooks, and markdown as the universal API for AI agents in game dev."
og_image: "https://www.tinqs.com/blog/img/agentic-workflow-architecture.png"
excerpt: "Soul files, skill playbooks, and markdown as the universal API. How we built an agentic workflow that lets a 4-person indie studio operate at 10x scale."
excerpt: "We gave AI agents persistent identities, skill playbooks, and access to our entire knowledge base. Here's how four people ship like forty."
author: "Ozan Bozkurt"
author_initials: "OB"
author_role: "CTO & Developer, Tinqs"
---
We gave our AI agents persistent identities, skill playbooks, and access to our entire knowledge base. This is how a 4-person game studio built an agentic workflow that punches above its weight.
Last week one of our agents caught a stale bug at 3am — a vegetation culling issue that had been open for six days. It nudged the team chat, drafted a fix summary, and by morning the issue was resolved. Nobody lost sleep. Nobody context-switched. The agent just handled it.
## The Problem Every Small Studio Knows
This is what happens when you stop treating AI as a chatbot and start treating it as a team member with a persistent identity, a memory, and a set of skills it can actually execute.
When you're four people building a game, there's no room for a dedicated DevOps person, a full-time PM tool chain, or someone whose job it is to "keep things organised." Everyone wears five hats. Documentation drifts. Issues pile up. The left hand doesn't know what the right hand shipped.
## The problem with "just use ChatGPT"
We tried the usual tools --- Notion, Trello, shared Google Docs. They all had the same problem: they're passive. They sit there and wait for a human to update them. In a team of four where the lead developer is also the CTO, that human never has time.
Every small studio hits the same wall: four people, forty roles. Nobody has time to keep documentation current. Bugs pile up. The backlog rots. Someone asks "what did we decide about the inventory system?" and three different answers come back.
So we built something different. We gave AI agents persistent identities, connected them to our entire knowledge base, and let them become working members of the team.
The usual fix is more tools — Notion, Trello, Linear, Slack integrations. But tools are passive. They sit there waiting for humans to update them. In a team where the lead developer is also the CTO, that human is already stretched thin.
## The Architecture: Agents with Identity
We tried something different. Instead of adding more tools for humans to maintain, we gave AI agents persistent identities, connected them to our entire knowledge base, and let them do the maintenance.
Our primary AI agent runs inside the IDE and has access to the full documentation repository --- the game design document, backlog, meeting notes, company operations, everything. It's not a chatbot. It's a persistent team member with a **soul file** that defines its values and operating principles, and a **memory file** that persists context across sessions.
## Soul files: giving agents a personality that sticks
The key insight: **all knowledge lives in markdown files in one repo**. No databases, no SaaS dashboards, no proprietary formats. Plain text, version-controlled, readable by humans and agents alike. When anyone on the team opens the docs repo, the agent wakes up with full context of who they are, what machine they're on, and what's been happening.
The core idea is embarrassingly simple. Every agent gets a **soul file** — a markdown document that defines who it is, what it values, and how it should behave:
### What the agent actually does
- **Values** — "never break the build," "always verify before acting," "prefer existing patterns over novelty"
- **Knowledge scope** — what repos exist, who's on the team, what the game is about
- **Behavioural rules** — when to act autonomously, when to ask, what requires explicit human approval
This isn't theatre. It's the difference between an agent that asks "what project is this?" every session and one that says "I see the vegetation grid was updated yesterday — want me to check the cache eviction?"
The soul file loads in 100ms when the agent starts. No cold starts. No re-explaining.
## Memory: markdown in git, not a vector database
Agent memory lives as plain markdown files in our docs repo. No vector databases, no proprietary stores, no SaaS dashboards. The agent writes to its memory file during work, commits it, and reads it on the next session.
This is deliberately low-tech. Markdown in git gives you version history, diffs, branching, and human readability for free. When memory goes wrong — and it will — you `git log` to see what changed and `git revert` to fix it. Try debugging a corrupted vector embedding at 11pm.
## Skills: teachable playbooks, not prompt engineering
Agents don't just have instructions. They have **skills** — markdown playbooks that teach specific workflows. When someone says "generate concept art for a character," the agent reads `skills/image-generation.md` and follows the procedure. No prompt engineering per session. No "let me try a different prompt."
We've open-sourced several skills:
- [Image Generation with fal.ai](../skills/image-generation.md) — 4-layer prompt pattern that actually produces usable game art
- [Concept Art Pipeline](../skills/concept-art-pipeline.md) — full 2D concept → 3D model workflow
- [3D Model Generation](../skills/tripo-browser-workflow.md) — Tripo Studio text-to-3D
- [Video Generation](../skills/sora2-video.md) — trailer clips with Sora 2
Each skill took about 30 minutes to write. After six months, our agents have 15+ skills covering art generation, competitive research, video production, and project management. Skills compound — every playbook you write makes every future session more capable.
## What the agents actually do, every day
**During the day** (interactive, inside the IDE):
- Triages and grooms the issue backlog
- Keeps documentation in sync with the game state
- Processes bug reports from testers and creates structured issues
- Drafts team announcements, reviews PRs, manages cross-repo coordination
- Generates concept art, trailer frames, and UI assets using integrated API skills
- Conducts competitive research --- analysing Steam pages, player reviews, pricing strategies
- Keeps documentation in sync with what's actually in the game
- Processes tester bug reports and creates structured issues
- Generates concept art, trailer frames, UI icons on demand
- Conducts competitive research — Steam pages, player reviews, pricing
The team talks to the agent through voice. The IDE's built-in microphone transcribes and auto-translates (multilingual team). The agent is trained to interpret messy voice-to-text artifacts and act on intent, not grammar.
The team talks to the agent through voice. The IDE microphone transcribes, and the agent interprets intent from messy voice-to-text. "There's a tree floating two meters above the terrain on the west beach" becomes a filed issue with a screenshot, a vision-model description, and coordinates.
## Background Automation
**At night** (background daemon, $15/day):
The interactive agent only runs when someone opens the IDE. But a studio doesn't sleep --- bugs get reported at midnight, issues go stale, and the team chat fills up while everyone's away.
- Polls team chat every 15 minutes, responds to commands
- When a tester reports a bug in chat, creates a structured issue automatically
- Flags stale issues that haven't been touched
- Posts a morning digest of what happened overnight
- Creates its own skill files when it discovers better approaches
A background daemon runs 24/7, ticking every 15 minutes. It uses a three-tier model strategy --- cheap models for routine checks, medium for analysis, and premium only when it needs deep reasoning. The whole thing costs about $15/day.
## What we learned
### What it handles
**Plain text is the universal API.** Every tool, every agent, every human can read a markdown file. We store everything — design docs, meeting notes, agent memory, team contacts — as `.md` in one repo. It sounds too simple, but it eliminates an entire class of integration problems.
- **Chat monitoring** --- polls team chat, responds to commands, acknowledges messages
- **Bug intake** --- when a tester reports a bug in chat, creates a structured issue automatically
- **Stale issue detection** --- flags issues that haven't been touched, nudges the team
- **Daily summaries** --- posts a morning digest of what happened overnight
- **Self-learning** --- creates its own skill files when it discovers better approaches
**Cheap models for routine, expensive models for thinking.** Most of what an agent does is pattern matching — "does this look like a bug report?" You don't need DeepSeek Pro for that. Save the premium tokens for decisions that actually require reasoning. Our background daemon costs $15/day with a three-tier model strategy.
The two agents coordinate through the docs repo itself. One writes, the other reads. No API calls between them, no message queue. Just git.
**Voice changes everything.** When you can describe a bug while looking at the screen, and the agent transcribes, interprets, and files it — that collapses the distance between noticing a problem and tracking it. Keyboard-free bug reporting is a superpower.
## The Skill System
**Skills compound exponentially.** One skill saves 15 minutes per session. Fifteen skills save hours per day across the whole team. The investment curve is absurdly favourable — 30 minutes of writing per skill, compounding returns forever.
Agents don't just have instructions --- they have **skills**. Each skill is a markdown file that teaches the agent a specific workflow: how to generate concept art through a pipeline, how to use image generation APIs, how to conduct competitive research, how to create 3D models from concept art.
When someone asks the agent to do something that matches a skill, it reads the skill file and follows the procedure. This means you can teach the agent new capabilities without changing any code --- just write a new markdown file.
We've open-sourced several of our skills in this repo:
- [Image Generation with fal.ai](../skills/image-generation.md)
- [Concept Art Pipeline](../skills/concept-art-pipeline.md)
- [3D Model Generation with Tripo](../skills/tripo-browser-workflow.md)
- [Video Generation with Sora 2](../skills/sora2-video.md)
## Soul Files: Why Identity Matters
Giving the agent a persistent identity isn't theatre. It creates consistency across sessions. The soul file defines:
- **Values** --- what the agent prioritises (e.g., "never break the build," "always verify before acting")
- **Knowledge scope** --- what repos, services, and team members exist
- **Behavioural rules** --- how to handle ambiguity, when to ask vs act, what requires human approval
The agent remembers what it learned, adapts to who's asking, and maintains the same principles whether it's triaging bugs or drafting a Steam page description. The soul file is the agent's constitution.
## What We've Learned
**Plain text is the universal API.** Every tool, every agent, every human can read a markdown file. We store everything --- design documents, meeting notes, agent memory, team contacts --- as .md files in one repository. This sounds almost too simple, but it eliminates an entire class of integration problems.
**Cheap models for routine, expensive models for thinking.** Most of what an autonomous agent does is pattern matching and text formatting --- you don't need the most expensive model for that. Save the premium tokens for decisions that actually require reasoning.
**The human stays in the loop for decisions.** The agents can file issues, draft announcements, and generate assets --- but they don't merge code, deploy builds, or post to public channels without explicit approval. The workflow is designed so the AI handles the grunt work while humans make the calls that matter.
**Voice input changes everything.** When you can describe a bug while looking at the game screen, and the agent transcribes, interprets, and files an issue --- that's a workflow that collapses the distance between noticing a problem and tracking it.
**Skills compound.** Every skill file you write makes the agent more capable. After 6 months, our agents have 15+ skills covering art generation, competitive research, video production, and project management. Each one took 30 minutes to write and saves hours every week.
## The Numbers
- **Team size:** 4 humans + AI agents
- **Background agent cost:** ~$15/day (~$450/month)
- **Knowledge files:** 200+ markdown documents
- **Skills:** 15+ agent skill files and growing
- **Infrastructure:** Multiple machines, self-hosted git, zero DevOps engineers
We're four people. With agents doing the mechanical work, we operate like forty. Not because the AI is magic — because we gave it identity, memory, and the right playbooks, and then got out of its way.
---
We're not claiming this is how every studio should work. But for a small team trying to build something ambitious, having AI agents that actually understand the project --- not just answer questions about it --- has been transformative. The agents don't replace anyone on the team. They make it possible for four people to do the work of forty.
We're building all of this as part of [Tinqs Studio](https://tinqs.com) --- a game development platform that brings git hosting, AI tools, and team workflows together. The blog posts and skills in this repo are part of that journey.
*We're building [Ariki](https://arikigame.com), a survival colony sim, using the same agent workflow described here. Everything runs on [Tinqs Studio](https://tinqs.com) — a game dev platform with built-in AI agents, git hosting, and creative pipelines.*