<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Getting started on DevFlow</title><link>https://devflow.cloud/docs/getting-started/</link><description>Recent content in Getting started on DevFlow</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://devflow.cloud/docs/getting-started/index.xml" rel="self" type="application/rss+xml"/><item><title>Installation</title><link>https://devflow.cloud/docs/getting-started/installation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devflow.cloud/docs/getting-started/installation/</guid><description>&lt;h2 id="install"&gt;Install&lt;/h2&gt;&#10;&lt;p&gt;In Claude Code, add the marketplace and install the plugin:&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;/plugin marketplace add AO-Cyber-Systems/devflow-claude&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;/plugin install devflow@aocyber&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;You can do the same thing through the Claude Desktop plugin UI: open the plugins&#10;panel, add the &lt;code&gt;AO-Cyber-Systems/devflow-claude&lt;/code&gt; marketplace, then install&#10;&lt;code&gt;devflow&lt;/code&gt;.&lt;/p&gt;&#10;&lt;p&gt;Verify it took:&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;/devflow:help&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="what-installation-registers"&gt;What installation registers&lt;/h2&gt;&#10;&lt;p&gt;Enabling the plugin wires up four things automatically. You do not edit&#10;&lt;code&gt;settings.json&lt;/code&gt; by hand.&lt;/p&gt;&#10;&lt;table&gt;&#10;&#9;&lt;thead&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Thing&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Count&lt;/th&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;th&gt;Where it lives&lt;/th&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/thead&gt;&#10;&#9;&lt;tbody&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Skills (slash commands)&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;31&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;plugins/devflow/skills/&amp;lt;name&amp;gt;/SKILL.md&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Subagents&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;13&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;plugins/devflow/agents/*.md&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Hooks&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;15 files, 12 registered&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;&lt;code&gt;plugins/devflow/hooks/hooks.json&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&#9;&#9;&lt;tr&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;Status line&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;1&lt;/td&gt;&#10;&#9;&#9;&#9;&#9;&#9;&lt;td&gt;declared in &lt;code&gt;plugin.json&lt;/code&gt;&lt;/td&gt;&#10;&#9;&#9;&#9;&lt;/tr&gt;&#10;&#9;&lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;h2 id="the-runtime-mirror"&gt;The runtime mirror&lt;/h2&gt;&#10;&lt;p&gt;Skills and agents reference shared files with &lt;code&gt;@~/.claude/devflow/...&lt;/code&gt; paths.&#10;Those &lt;code&gt;@path&lt;/code&gt; references are resolved by Claude Code and &lt;strong&gt;do not&lt;/strong&gt; interpolate&#10;&lt;code&gt;${CLAUDE_PLUGIN_ROOT}&lt;/code&gt;, so the plugin cannot reference its own bundled runtime&#10;directly.&lt;/p&gt;</description></item><item><title>Quickstart</title><link>https://devflow.cloud/docs/getting-started/quickstart/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devflow.cloud/docs/getting-started/quickstart/</guid><description>&lt;p&gt;This walks the shortest path that still exercises the whole loop. Use a scratch&#10;directory — you are going to let agents write code.&lt;/p&gt;&#10;&lt;h2 id="1-initialise"&gt;1. Initialise&lt;/h2&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mkdir hello-devflow &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;cd&lt;/span&gt; hello-devflow &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; git init&#10;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;claude --dangerously-skip-permissions&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;In the session:&lt;/p&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;/devflow:new-project&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;DevFlow asks what you&amp;rsquo;re building, researches the domain, scopes requirements into&#10;v1 and v2, and writes a roadmap. You will be asked to confirm at three gates&#10;(project, requirements, roadmap) — that is &lt;code&gt;gates.confirm_*&lt;/code&gt; doing its job.&lt;/p&gt;</description></item><item><title>Your first project</title><link>https://devflow.cloud/docs/getting-started/first-project/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devflow.cloud/docs/getting-started/first-project/</guid><description>&lt;p&gt;&lt;code&gt;/devflow:new-project&lt;/code&gt; is the only command that creates &lt;code&gt;.planning/&lt;/code&gt; from nothing.&#10;Everything downstream reads what it writes, so it is worth understanding what&#10;comes out.&lt;/p&gt;&#10;&lt;h2 id="the-interview"&gt;The interview&lt;/h2&gt;&#10;&lt;p&gt;DevFlow asks what you&amp;rsquo;re building. Answer in prose — a paragraph is plenty. It&#10;uses your answer to decide how much research it needs and what &lt;code&gt;kind&lt;/code&gt; the project&#10;is.&lt;/p&gt;&#10;&lt;p&gt;You can skip the interview entirely with &lt;code&gt;--auto&lt;/code&gt;, which makes reasonable&#10;assumptions and moves straight to research. Use it when you already know exactly&#10;what you want and would rather correct a draft than answer questions.&lt;/p&gt;</description></item><item><title>Existing codebases</title><link>https://devflow.cloud/docs/getting-started/existing-codebase/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://devflow.cloud/docs/getting-started/existing-codebase/</guid><description>&lt;p&gt;DevFlow&amp;rsquo;s default assumption is a greenfield project. On an existing codebase, the&#10;roadmapper needs to know what is already there or it will plan work that duplicates&#10;or contradicts it.&lt;/p&gt;&#10;&lt;h2 id="map-first"&gt;Map first&lt;/h2&gt;&#10;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;/devflow:map-codebase&#10;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This dispatches &lt;code&gt;codebase-mapper&lt;/code&gt; agents in parallel, each analysing a different&#10;angle:&lt;/p&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Stack&lt;/strong&gt; — languages, frameworks, build tooling, dependency posture.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Architecture&lt;/strong&gt; — module boundaries, data flow, entry points.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Quality&lt;/strong&gt; — test coverage shape, conventions actually followed (not the ones&#10;in the style guide).&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Concerns&lt;/strong&gt; — things that will bite: coupling, dead code, risky patterns.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Findings land in &lt;code&gt;.planning/codebase/&lt;/code&gt;.&lt;/p&gt;</description></item></channel></rss>