[{"data":1,"prerenderedAt":481},["ShallowReactive",2],{"navigation_docs_en":3,"-en-development-ai-workflow-overview":191,"-en-development-ai-workflow-overview-surround":476},[4,61,127,171],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":60},"Guide","i-lucide-book-open","\u002Fen\u002Fguide","en\u002F1.guide",[10,15,20,25,30,35,40,45,50,55],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fen\u002Fguide\u002Fintroduction","en\u002F1.guide\u002F01.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Install the App","\u002Fen\u002Fguide\u002Finstallation","en\u002F1.guide\u002F02.installation","i-lucide-smartphone",{"title":21,"path":22,"stem":23,"icon":24},"Authentication","\u002Fen\u002Fguide\u002Fauth","en\u002F1.guide\u002F03.auth","i-lucide-lock",{"title":26,"path":27,"stem":28,"icon":29},"Wallets","\u002Fen\u002Fguide\u002Fwallets","en\u002F1.guide\u002F04.wallets","i-lucide-wallet",{"title":31,"path":32,"stem":33,"icon":34},"Categories","\u002Fen\u002Fguide\u002Fcategories","en\u002F1.guide\u002F05.categories","i-lucide-tags",{"title":36,"path":37,"stem":38,"icon":39},"Transactions","\u002Fen\u002Fguide\u002Ftransactions","en\u002F1.guide\u002F06.transactions","i-lucide-receipt",{"title":41,"path":42,"stem":43,"icon":44},"Transfers","\u002Fen\u002Fguide\u002Ftransfers","en\u002F1.guide\u002F07.transfers","i-lucide-arrow-left-right",{"title":46,"path":47,"stem":48,"icon":49},"Statistics","\u002Fen\u002Fguide\u002Fstatistics","en\u002F1.guide\u002F08.statistics","i-lucide-bar-chart-3",{"title":51,"path":52,"stem":53,"icon":54},"Theme","\u002Fen\u002Fguide\u002Ftheme","en\u002F1.guide\u002F09.theme","i-lucide-palette",{"title":56,"path":57,"stem":58,"icon":59},"Settings","\u002Fen\u002Fguide\u002Fsettings","en\u002F1.guide\u002F10.settings","i-lucide-settings",false,{"title":62,"icon":63,"path":64,"stem":65,"children":66,"page":60},"Development","i-lucide-code","\u002Fen\u002Fdevelopment","en\u002F2.development",[67,72,77,82,87,92,97,102,122],{"title":68,"path":69,"stem":70,"icon":71},"Installation","\u002Fen\u002Fdevelopment\u002Finstallation","en\u002F2.development\u002F01.installation","i-lucide-download",{"title":73,"path":74,"stem":75,"icon":76},"Codebase Graph","\u002Fen\u002Fdevelopment\u002Funderstand-anything","en\u002F2.development\u002F02.understand-anything","i-lucide-network",{"title":78,"path":79,"stem":80,"icon":81},"Offline & PWA","\u002Fen\u002Fdevelopment\u002Foffline","en\u002F2.development\u002F03.offline","i-lucide-wifi-off",{"title":83,"path":84,"stem":85,"icon":86},"Data Migration History","\u002Fen\u002Fdevelopment\u002Fmigration","en\u002F2.development\u002F04.migration","i-lucide-database",{"title":88,"path":89,"stem":90,"icon":91},"Deployment","\u002Fen\u002Fdevelopment\u002Fdeployment","en\u002F2.development\u002F05.deployment","i-lucide-rocket",{"title":93,"path":94,"stem":95,"icon":96},"Testing","\u002Fen\u002Fdevelopment\u002Ftesting","en\u002F2.development\u002F06.testing","i-lucide-flask-conical",{"title":98,"path":99,"stem":100,"icon":101},"Date Utilities","\u002Fen\u002Fdevelopment\u002Fdate-utilities","en\u002F2.development\u002F07.date-utilities","i-lucide-calendar",{"title":103,"path":104,"stem":105,"children":106,"page":60},"Ai Workflow","\u002Fen\u002Fdevelopment\u002Fai-workflow","en\u002F2.development\u002F08.ai-workflow",[107,112,117],{"title":108,"path":109,"stem":110,"icon":111},"Overview","\u002Fen\u002Fdevelopment\u002Fai-workflow\u002Foverview","en\u002F2.development\u002F08.ai-workflow\u002F01.overview","i-lucide-bot",{"title":113,"path":114,"stem":115,"icon":116},"Agents","\u002Fen\u002Fdevelopment\u002Fai-workflow\u002Fagents","en\u002F2.development\u002F08.ai-workflow\u002F02.agents","i-lucide-users",{"title":118,"path":119,"stem":120,"icon":121},"Skills","\u002Fen\u002Fdevelopment\u002Fai-workflow\u002Fskills","en\u002F2.development\u002F08.ai-workflow\u002F03.skills","i-lucide-lightbulb",{"title":123,"path":124,"stem":125,"icon":126},"Troubleshooting","\u002Fen\u002Fdevelopment\u002Ftroubleshooting","en\u002F2.development\u002F09.troubleshooting","i-lucide-life-buoy",{"title":128,"icon":129,"path":130,"stem":131,"children":132,"page":60},"Reference","i-lucide-file-code","\u002Fen\u002Freference","en\u002F3.reference",[133,138,142,147,152,156,161,166],{"title":134,"path":135,"stem":136,"icon":137},"Architecture","\u002Fen\u002Freference\u002Farchitecture","en\u002F3.reference\u002F01.architecture","i-lucide-boxes",{"title":139,"path":140,"stem":141,"icon":44},"Transaction Types","\u002Fen\u002Freference\u002Ftransaction-types","en\u002F3.reference\u002F02.transaction-types",{"title":143,"path":144,"stem":145,"icon":146},"Sync","\u002Fen\u002Freference\u002Fsync","en\u002F3.reference\u002F03.sync","i-lucide-refresh-cw",{"title":148,"path":149,"stem":150,"icon":151},"Offline-first","\u002Fen\u002Freference\u002Foffline-first","en\u002F3.reference\u002F04.offline-first","i-lucide-list-ordered",{"title":153,"path":154,"stem":155,"icon":121},"Technical Decisions","\u002Fen\u002Freference\u002Ftech-decisions","en\u002F3.reference\u002F05.tech-decisions",{"title":157,"path":158,"stem":159,"icon":160},"Validation Strategy","\u002Fen\u002Freference\u002Fvalidation-strategy","en\u002F3.reference\u002F06.validation-strategy","i-lucide-shield-check",{"title":162,"path":163,"stem":164,"icon":165},"What Changed Since Firebase","\u002Fen\u002Freference\u002Ffirebase-migration","en\u002F3.reference\u002F07.firebase-migration","i-lucide-hamburger",{"title":167,"path":168,"stem":169,"icon":170},"Performance","\u002Fen\u002Freference\u002Fperformance","en\u002F3.reference\u002F08.performance","i-lucide-gauge",{"title":172,"icon":173,"path":174,"stem":175,"children":176,"page":60},"Premium","i-lucide-star","\u002Fen\u002Fpremium","en\u002F4.premium",[177,181,186],{"title":108,"path":178,"stem":179,"icon":180},"\u002Fen\u002Fpremium\u002Foverview","en\u002F4.premium\u002F01.overview","i-lucide-layers",{"title":182,"path":183,"stem":184,"icon":185},"Telegram Bot","\u002Fen\u002Fpremium\u002Ftelegram-bot","en\u002F4.premium\u002F02.telegram-bot","i-lucide-send",{"title":187,"path":188,"stem":189,"icon":190},"AI Chat","\u002Fen\u002Fpremium\u002Fai-chat","en\u002F4.premium\u002F03.ai-chat","i-lucide-sparkles",{"id":192,"title":108,"body":193,"description":467,"extension":468,"links":469,"meta":470,"navigation":471,"path":109,"seo":472,"stem":110,"__hash__":475},"docs_en\u002Fen\u002F2.development\u002F08.ai-workflow\u002F01.overview.md",{"type":194,"value":195,"toc":449},"minimark",[196,201,210,277,281,286,289,317,321,324,339,343,346,372,376,380,388,391,403,407,425,429,436,440],[197,198,200],"h2",{"id":199},"what-this-is","What This Is",[202,203,204,205,209],"p",{},"The project includes Claude Code configurations that standardize how AI assists with development. They live in ",[206,207,208],"code",{},"base\u002F.claude\u002F"," and cover two areas.",[211,212,213,229],"table",{},[214,215,216],"thead",{},[217,218,219,223,226],"tr",{},[220,221,222],"th",{},"Type",[220,224,225],{},"Purpose",[220,227,228],{},"Location",[230,231,232,248,262],"tbody",{},[217,233,234,240,243],{},[235,236,237],"td",{},[238,239,113],"strong",{},[235,241,242],{},"Specialized subagents for delegation (code review, planning, build fixes)",[235,244,245],{},[206,246,247],{},".claude\u002Fagents\u002F",[217,249,250,254,257],{},[235,251,252],{},[238,253,118],{},[235,255,256],{},"Detailed guides activated on demand (TDD, security checklist, patterns)",[235,258,259],{},[206,260,261],{},".claude\u002Fskills\u002F",[217,263,264,269,272],{},[235,265,266],{},[238,267,268],{},"Plugins",[235,270,271],{},"Extended capabilities installed via Claude Code plugin system",[235,273,274],{},[206,275,276],{},"~\u002F.claude\u002Fplugins\u002F",[197,278,280],{"id":279},"how-it-works","How It Works",[282,283,285],"h3",{"id":284},"skills-on-demand","Skills (on demand)",[202,287,288],{},"Skills are invoked via slash commands when you need a specific workflow.",[290,291,292,299,305,311],"ul",{},[293,294,295,298],"li",{},[206,296,297],{},"\u002Fsecurity-review",", comprehensive security audit checklist",[293,300,301,304],{},[206,302,303],{},"\u002Ftdd-workflow",", Red, Green, Refactor cycle with Vitest",[293,306,307,310],{},[206,308,309],{},"\u002Fnuxt4-patterns",", Nuxt 4 reference adapted for SPA mode",[293,312,313,316],{},[206,314,315],{},"\u002Fe2e-testing",", Playwright testing patterns",[282,318,320],{"id":319},"plugins-extended-capabilities","Plugins (extended capabilities)",[202,322,323],{},"Plugins add new slash commands beyond what's built into Claude Code.",[290,325,326],{},[293,327,328,331,332],{},[206,329,330],{},"\u002Funderstand",", analyzes the full codebase and produces an interactive knowledge graph at ",[333,334,338],"a",{"href":335,"rel":336},"https:\u002F\u002Ffinapp-graph.ilko.me\u002F",[337],"nofollow","finapp-graph.ilko.me",[282,340,342],{"id":341},"agents-delegated-tasks","Agents (delegated tasks)",[202,344,345],{},"Agents are specialized subprocesses for complex tasks. Claude can delegate to them automatically or you can request one directly.",[290,347,348,354,360,366],{},[293,349,350,351],{},"\"Review this TypeScript\", ",[206,352,353],{},"typescript-reviewer",[293,355,356,357],{},"\"Review this code\", ",[206,358,359],{},"code-reviewer",[293,361,362,363],{},"\"Plan this feature\", ",[206,364,365],{},"planner",[293,367,368,369],{},"\"Fix the build\", ",[206,370,371],{},"build-error-resolver",[197,373,375],{"id":374},"whats-configured","What's Configured",[282,377,379],{"id":378},"security","Security",[290,381,382],{},[293,383,384,387],{},[238,385,386],{},"Skill",": comprehensive OWASP checklist adapted for Supabase + PowerSync (RLS, JWT, sync rules)",[282,389,93],{"id":390},"testing",[290,392,393,398],{},[293,394,395,397],{},[238,396,386],{},": Vitest patterns, TDD workflow, mocking PowerSync, Pinia, localStorage",[293,399,400,402],{},[238,401,386],{},": Playwright E2E testing patterns",[282,404,406],{"id":405},"code-quality","Code Quality",[290,408,409,415,420],{},[293,410,411,414],{},[238,412,413],{},"Agent",": general code reviewer (Vue, Nuxt, PowerSync\u002FSupabase patterns)",[293,416,417,419],{},[238,418,413],{},": TypeScript reviewer (type safety, async correctness, Composition API)",[293,421,422,424],{},[238,423,413],{},": build error resolver (minimal fixes to get the build green)",[282,426,428],{"id":427},"planning","Planning",[290,430,431],{},[293,432,433,435],{},[238,434,413],{},": feature planner that considers offline support, optimistic UI, frontend IDs, i18n",[197,437,439],{"id":438},"origin","Origin",[202,441,442,443,448],{},"Adapted from ",[333,444,447],{"href":445,"rel":446},"https:\u002F\u002Fgithub.com\u002Faffaan-m\u002Feverything-claude-code",[337],"everything-claude-code"," (MIT). All React, Next.js patterns replaced with Vue 3, Nuxt 4. Project uses Supabase + PowerSync (offline-first). Project specific patterns added (shallowRef stores, optimistic writes, client-generated UUIDs).",{"title":450,"searchDepth":451,"depth":451,"links":452},"",2,[453,454,460,466],{"id":199,"depth":451,"text":200},{"id":279,"depth":451,"text":280,"children":455},[456,458,459],{"id":284,"depth":457,"text":285},3,{"id":319,"depth":457,"text":320},{"id":341,"depth":457,"text":342},{"id":374,"depth":451,"text":375,"children":461},[462,463,464,465],{"id":378,"depth":457,"text":379},{"id":390,"depth":457,"text":93},{"id":405,"depth":457,"text":406},{"id":427,"depth":457,"text":428},{"id":438,"depth":451,"text":439},"How Claude Code is configured for the Finapp project, agents and skills.","md",null,{},{"icon":111},{"title":473,"description":474},"AI Workflow Overview","Overview of Claude Code configuration for Finapp. Agents for code review, planning and build fixes. Skills for TDD, security, Nuxt 4 patterns and E2E testing.","w0s1ZfzE52JnCmiLwVFihlks3RLo_rcAAq0aESgEwn8",[477,479],{"title":98,"path":99,"stem":100,"description":478,"icon":101,"children":-1},"Date range computation, period formatting, and interval bucketing.",{"title":113,"path":114,"stem":115,"description":480,"icon":116,"children":-1},"Specialized AI subagents for code review, TypeScript review, planning, and build fixing.",1782114345689]