{"slug": "i-built-an-office-full-of-ai-developers-they-started-opening-pull-requests", "title": "I Built an Office Full of AI Developers. They Started Opening Pull Requests.", "summary": "A developer built 'My Little Office', an open-source project that pairs pixel-art characters with real AI coding agents, allowing users to assign tasks that agents execute in isolated workspaces, from cloning repositories to opening pull requests. The project highlights a shift from writing code to managing AI agents, raising questions about defining tasks and verifying results.", "body_md": "A few weeks ago I had a stupid idea.\n\nWhat if instead of opening Claude Code, ChatGPT, Cursor, Gemini, GitHub Copilot and twelve terminal tabs...\n\nI just had an **office full of AI developers**?\n\nNot metaphorically.\n\nAn actual office.\n\nWith tiny pixel-art developers walking around, taking tickets, writing code, running tests and opening pull requests.\n\nSo naturally, instead of doing something responsible with my free time...\n\nI built it.\n\nIt's called **My Little Office**.\n\n👉 [github.com/holasoymalva/my-little-office](https://github.com/holasoymalva/my-little-office)\n\nAnd somewhere between building a cute pixel-art dashboard and watching an AI agent modify a real repository, I realized:\n\n**this project is much less about AI agents than I originally thought.**\n\nIt's about what software development might look like when writing the code is no longer the main bottleneck.\n\nAnd things get weird very quickly.\n\nThe original idea was simple.\n\nI wanted something like this:\n\n```\n┌──────────────────────────────────────┐\n│          MY LITTLE OFFICE            │\n│                                      │\n│   👨‍💻 DEV       🧪 QA       🧠 LEAD   │\n│                                      │\n│   coding...    testing...   thinking │\n│                                      │\n└──────────────────────────────────────┘\n```\n\n`\n\nCute.\n\nFun.\n\nProbably useless.\n\nExcept I didn't want the characters to just pretend they were working.\n\nThere are already enough dashboards showing fake activity bars moving from left to right.\n\nI wanted the little developer sitting at the desk to be connected to an **actual coding agent**.\n\nSo that's what My Little Office became.\n\nEach character can represent a different role and AI provider.\n\nRight now I have agents like:\n\nAnd underneath those characters you can run models from:\n\n**ChatGPT. Gemini. Grok.**\n\nThe pixel characters are basically the UI.\n\nBehind them there are actual agents doing actual work.\n\nThis is where the project stopped being a toy.\n\nYou can give an agent something like:\n\nFix the checkout crash when the shopping cart is empty.\n\nThe agent gets its own isolated workspace.\n\nThen it can:\n\n`text`\n\nclone repository\n\n↓\n\nunderstand task\n\n↓\n\ninspect codebase\n\n↓\n\nmake changes\n\n↓\n\nrun project checks\n\n↓\n\nrepair failures\n\n↓\n\ncommit changes\n\n↓\n\npush branch\n\n↓\n\nopen pull request\n\nAnd suddenly the cute pixel developer walking toward a desk isn't just an animation anymore.\n\n**There is actually something modifying your codebase behind it.**\n\nThat's the moment the project became interesting to me.\n\nBecause I've used AI coding tools constantly.\n\nI've generated functions.\n\nI've refactored code.\n\nI've asked AI to debug things that I absolutely could have debugged myself but didn't feel like debugging because it was 6 PM.\n\nWe've all been there.\n\nBut this felt different.\n\nI wasn't asking:\n\n\"Write this function.\"\n\nI was asking:\n\n\"Solve this problem.\"\n\nThat sounds like a tiny difference.\n\nIt isn't.\n\nAt some point I noticed I wasn't coding.\n\nI was doing this:\n\nThis bug belongs to QA first.\n\nThis refactor is risky, give it to the Tech Lead.\n\nRun the tests before opening the PR.\n\nDon't touch these commands.\n\nThe task is too vague. Ask for clarification.\n\nCongratulations.\n\nI accidentally promoted myself to middle management.\n\nMy parents must be proud.\n\nBut jokes aside, this changed how I started thinking about AI-assisted software development.\n\nThe interesting skill was no longer:\n\n**Can I write this code?**\n\nThe interesting questions became:\n\n**Can I describe the problem correctly?**\n\n**Can I define what \"done\" actually means?**\n\n**Can I give an agent enough context without giving it enough power to destroy everything?**\n\n**Can I verify the result?**\n\n**Can I design a workflow where bad output gets caught automatically?**\n\nThat's a completely different engineering problem.\n\nThis was probably the biggest thing I wish I understood before building this.\n\nConnecting an LLM to a repository is relatively easy.\n\nGive it tools.\n\nLet it read files.\n\nLet it modify files.\n\nLet it run commands.\n\nBoom.\n\nYou have an \"AI software engineer.\"\n\nTwitter thread completed.\n\n$14M seed round incoming.\n\nThe difficult part comes five minutes later.\n\nWhat happens when the agent writes garbage?\n\nWhat happens when the tests fail?\n\nWhat happens when it runs the wrong command?\n\nWhat happens when two agents modify the same repository?\n\nWhat happens when it confidently solves the wrong problem?\n\nWhat happens when your brilliant autonomous developer decides that deleting half the application is technically a valid refactor?\n\nThat's why My Little Office ended up having things like isolated workspaces, command restrictions and verification gates.\n\nAn agent can work inside its workspace.\n\nIt cannot casually wander around your machine like:\n\n`bash`\n\nsudo rm -rf /\n\nbecause apparently **\"please don't destroy my laptop\"** is now a software architecture requirement.\n\nWelcome to 2026.\n\nHere's another interesting side effect.\n\nWe spent years complaining about tests.\n\n\"Do we really need unit tests for this?\"\n\n\"The feature is tiny.\"\n\n\"We'll add integration tests later.\"\n\nSure.\n\nAnd \"later\" lives next door to documentation and technical debt repayment.\n\nBut agents change the equation.\n\nIf humans are writing every change, tests are useful.\n\nIf agents are writing changes autonomously...\n\ntests become the fucking contract.\n\nMy Little Office has a simple rule:\n\n**If the project's verification commands fail, the task doesn't get delivered.**\n\nThe agent gets the failure.\n\nIt can attempt to repair the problem.\n\nIf it still can't make the project pass, the task fails.\n\nNo green checks?\n\nNo pull request.\n\nThat sounds obvious.\n\nBut I think this is going to become a much bigger part of software engineering.\n\nThe better AI coding becomes, the more valuable **verification** becomes.\n\nAI can generate infinite code.\n\nCongratulations.\n\nNow prove that any of it works.\n\nI know.\n\nAnother AI article telling you developers aren't going anywhere.\n\nVery original.\n\nBut hear me out.\n\nI think something *is* disappearing.\n\nAnd it's the assumption that a software engineer needs to personally write every implementation detail.\n\nWe already accepted this transformation before.\n\nNobody complains that programmers aren't writing assembly anymore.\n\nNobody says:\n\n\"Real programmers manually manage every memory address.\"\n\nWell...\n\nsomeone on Hacker News probably does.\n\nBut the rest of us happily moved up the abstraction stack.\n\nAssembly became C.\n\nC became higher-level languages.\n\nLibraries replaced repeated implementations.\n\nFrameworks replaced enormous amounts of boilerplate.\n\nCloud services replaced infrastructure we used to manage manually.\n\nStack Overflow replaced memorizing everything.\n\nAnd now AI is replacing another layer of mechanical work.\n\nThat doesn't necessarily make software engineering less valuable.\n\nIt changes **where the value lives**.\n\nThis project made me think that the future developer environment might look less like:\n\n`text`\n\ndeveloper → IDE → code\n\nand more like:\n\n`text`\n\ndeveloper\n\n↓\n\nintent\n\n↓\n\nagents\n\n↓\n\nimplementation\n\n↓\n\nautomated verification\n\n↓\n\nhuman review\n\n↓\n\nproduction\n\nAnd before someone gets angry:\n\nNo.\n\nI'm not saying nobody will write code.\n\nI still write code.\n\nYou should still understand code.\n\nYou should absolutely know what your agents are doing.\n\nBecause reviewing AI-generated code without understanding software engineering is basically approving a legal contract written in a language you don't speak.\n\nGood luck with that.\n\nBut I do think our relationship with code is changing.\n\nCode becomes less of the **product of our labor** and more of the **material we supervise**.\n\nAnd that's uncomfortable.\n\nEspecially for those of us who built our identity around being good at writing it.\n\nBuilding this made me care less about memorizing APIs and more about things that sit one level above implementation.\n\nThings like system design.\n\nArchitecture.\n\nDebugging.\n\nProduct thinking.\n\nBreaking vague requirements into executable tasks.\n\nWriting good acceptance criteria.\n\nUnderstanding security boundaries.\n\nDesigning verification.\n\nReviewing code critically.\n\nKnowing when the AI's solution is technically correct but completely stupid.\n\nThat last one is going to be a very important senior engineering skill.\n\nAI makes writing code cheaper.\n\n**Judgment doesn't become cheaper.**\n\nIf anything, judgment becomes more valuable because suddenly your team can generate an absurd amount of code very quickly.\n\nAnd somebody needs to decide whether that code deserves to exist.\n\nThis is another reason I built My Little Office.\n\nI think side projects are becoming valuable for a completely different reason.\n\nFor years we built side projects to practice coding.\n\nTodo app.\n\nWeather app.\n\nTwitter clone.\n\nNetflix clone.\n\nTodo app again because apparently humanity still hasn't solved lists.\n\nBut AI means we can experiment with entirely new software development workflows.\n\nDon't just build another SaaS.\n\nBuild an agent that maintains it.\n\nBuild an AI QA engineer.\n\nBuild an automated code reviewer.\n\nBuild something that turns issues into PRs.\n\nBuild multiple agents and make them argue about architecture.\n\nSeriously.\n\nMake two models review each other's code.\n\nWatch the chaos.\n\nYou'll learn more about where this technology fails than you will by reading another 97-post Twitter thread about \"10 AI tools that will replace developers by Friday.\"\n\nI don't know whether developers will work like this in five years.\n\nMaybe we'll have entire AI engineering teams.\n\nMaybe every developer will have five specialized agents.\n\nMaybe IDEs will disappear into agent orchestration systems.\n\nMaybe the whole thing collapses and we all go back to Vim.\n\nThat would be objectively hilarious.\n\nBut I wanted to experiment with the idea **now** instead of debating it endlessly.\n\nThat's what My Little Office is.\n\nNot:\n\n\"Look guys, I solved the future of software development.\"\n\nAbsolutely not.\n\nIt's more like:\n\n\"This future might be coming, so I built the stupid pixel-art version of it to see what breaks.\"\n\nAnd a lot breaks.\n\nWhich is exactly why it's interesting.\n\nThe project is open source.\n\nAnd this is really why I'm sharing it here.\n\nI don't want My Little Office to just be something people star, screenshot and forget about.\n\nI want developers to **experiment with it**.\n\nClone it.\n\nAdd your own agents.\n\nConnect your own repositories.\n\nChange the roles.\n\nReplace the models.\n\nMake five QA engineers fight one developer.\n\nAdd Claude.\n\nAdd local models.\n\nMake an agent exclusively responsible for deleting unnecessary abstractions.\n\nHonestly, I desperately need that employee.\n\nTry using it with a real side project.\n\nSee what happens.\n\nThen tell me where it fails.\n\n👉 **GitHub:** [holasoymalva/my-little-office](https://github.com/holasoymalva/my-little-office)\n\nIf you build something weird with it, open an issue, contribute, fork it or show me what you made.\n\nI would genuinely love to see where other developers take the idea.\n\nAfter building this, I'm less interested in the question:\n\n\"Will AI replace programmers?\"\n\nI think that's becoming the wrong question.\n\nA better one might be:\n\nWhat does a programmer become when writing code is no longer the expensive part of building software?\n\nMaybe we're becoming architects.\n\nMaybe orchestrators.\n\nMaybe product engineers.\n\nMaybe extremely overpaid babysitters for stochastic parrots.\n\nProbably some combination of all four.\n\nBut one thing hasn't changed.\n\nIt was never really about the code.\n\nThe code was just how we translated a problem into something a computer could execute.\n\nThe job was always:\n\n**understand the problem and make the machine solve it.**\n\nThe machine is just getting much better at helping with the second part.\n\nAnd I think that's pretty damn exciting.\n\nNow I'm curious.\n\n**Would you actually trust an AI agent to open pull requests against your real codebase?**\n\nAnd more importantly:\n\n**What role would you add to the office?**\n\nA Security Engineer?\n\nDevOps?\n\nDesigner?\n\nThat one senior developer who rejects every PR because \"this abstraction feels wrong\"?\n\nClone the project and let's find out.", "url": "https://wpnews.pro/news/i-built-an-office-full-of-ai-developers-they-started-opening-pull-requests", "canonical_source": "https://dev.to/holasoymalva/i-built-an-office-full-of-ai-developers-they-started-opening-pull-requests-1enj", "published_at": "2026-08-31 17:11:22+00:00", "updated_at": "2026-08-31 17:21:53.029704+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "generative-ai", "ai-products"], "entities": ["My Little Office", "Claude Code", "ChatGPT", "Cursor", "Gemini", "GitHub Copilot", "Grok"], "alternates": {"html": "https://wpnews.pro/news/i-built-an-office-full-of-ai-developers-they-started-opening-pull-requests", "markdown": "https://wpnews.pro/news/i-built-an-office-full-of-ai-developers-they-started-opening-pull-requests.md", "text": "https://wpnews.pro/news/i-built-an-office-full-of-ai-developers-they-started-opening-pull-requests.txt", "jsonld": "https://wpnews.pro/news/i-built-an-office-full-of-ai-developers-they-started-opening-pull-requests.jsonld"}}