Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions agent-browser-recording-site/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Website Agent-Browser Test Recording</title></head>
<body>
<h1>Website Agent-Browser Test Recording</h1>
<p>Recording of the browser UI verification session.</p>
<video controls src="test-recording.webm" style="max-width:100%;height:auto"></video>
<p><a href="test-recording.webm">Download recording</a></p>
</body>
</html>
Binary file added agent-browser-recording-site/test-recording.webm
Binary file not shown.
305 changes: 304 additions & 1 deletion content/site.yaml

Large diffs are not rendered by default.

6 changes: 5 additions & 1 deletion site/src/data/site-data.js
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,10 @@ export const navigation = {
"label": "Pricing",
"href": "/pricing"
},
{
"label": "Blogs",
"href": "/blog"
},
{
"label": "Docs",
"href": "https://docs.codebolt.ai",
Expand Down Expand Up @@ -231,7 +235,7 @@ export const navigation = {
"external": true
},
{
"label": "Blog",
"label": "Blogs",
"href": "/blog"
},
{
Expand Down
2 changes: 1 addition & 1 deletion site/src/pages/blog.astro
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,6 @@ import BlogGrid from '../components/BlogGrid.astro';
subtitle="Engineering decisions, architecture deep-dives, and what we're learning about scaling agents."
/>
<BlogGrid
posts={[{"date":"2026-03-25","title":"Why We Built an Engine, Not Another Agent","excerpt":"The origin story — why we chose to build a platform engine that can be a CLI, IDE, personal agent, and orchestration system, instead of another single-purpose AI tool.","tag":"Engineering"},{"date":"2026-03-18","title":"CLI to Autonomous Company: The Scaling Spectrum","excerpt":"How one engine handles the progression from a single coding agent to orchestrating hundreds of agents across multiple environments.","tag":"Architecture"},{"date":"2026-03-10","title":"How the Plugin System Enables Autonomous Applications","excerpt":"Why plugins in Codebolt don't need separate agent instances, how the three communication channels work, and what this means for building autonomous companies.","tag":"Architecture"},{"date":"2026-03-01","title":"Stigmergy vs Message Passing for Agent Coordination","excerpt":"A research-backed comparison of coordination strategies. Why indirect communication through shared state scales better than direct messaging.","tag":"Research"},{"date":"2026-02-20","title":"What Breaks When You Run 50 Agents on One Repo","excerpt":"Real problems we encountered scaling agent coordination — conflicts, drift, memory exhaustion — and the system-level solutions we built.","tag":"Engineering"},{"date":"2026-02-10","title":"Agent Deliberation: How Agents Make Decisions Together","excerpt":"Inside the deliberation council system — proposing, debating, voting, and reaching consensus without human intervention.","tag":"Architecture"}]}
posts={[{"date":"2026-03-25","title":"Why We Built an Engine, Not Another Agent","href":"/blog/why-we-built-an-engine-not-another-agent","excerpt":"The origin story — why we chose to build a platform engine that can be a CLI, IDE, personal agent, and orchestration system, instead of another single-purpose AI tool.","tag":"Engineering"},{"date":"2026-03-18","title":"CLI to Autonomous Company: The Scaling Spectrum","href":"/blog/cli-to-autonomous-company-scaling-spectrum","excerpt":"How one engine handles the progression from a single coding agent to orchestrating hundreds of agents across multiple environments.","tag":"Architecture"},{"date":"2026-03-10","title":"How the Plugin System Enables Autonomous Applications","href":"/blog/plugin-system-autonomous-applications","excerpt":"Why plugins in Codebolt don't need separate agent instances, how the three communication channels work, and what this means for building autonomous companies.","tag":"Architecture"},{"date":"2026-03-01","title":"Stigmergy vs Message Passing for Agent Coordination","href":"/blog/stigmergy-vs-message-passing","excerpt":"A research-backed comparison of coordination strategies. Why indirect communication through shared state scales better than direct messaging.","tag":"Research"},{"date":"2026-02-20","title":"What Breaks When You Run 50 Agents on One Repo","href":"/blog/what-breaks-running-50-agents","excerpt":"Real problems we encountered scaling agent coordination — conflicts, drift, memory exhaustion — and the system-level solutions we built.","tag":"Engineering"},{"date":"2026-02-10","title":"Agent Deliberation: How Agents Make Decisions Together","href":"/blog/agent-deliberation-decisions-together","excerpt":"Inside the deliberation council system — proposing, debating, voting, and reaching consensus without human intervention.","tag":"Architecture"}]}
/>
</BaseLayout>
44 changes: 44 additions & 0 deletions site/src/pages/blog/agent-deliberation-decisions-together.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
// Auto-generated from site content. Edit source content and regenerate.
import BaseLayout from '../../layouts/BaseLayout.astro';
import { site, navigation } from '../../data/site-data.js';
import PageHeader from '../../components/PageHeader.astro';
import CenteredText from '../../components/CenteredText.astro';
import FeatureBlock from '../../components/FeatureBlock.astro';
import CardGrid from '../../components/CardGrid.astro';
import CtaBlock from '../../components/CtaBlock.astro';
---
<BaseLayout title="Agent Deliberation: How Agents Make Decisions Together — Codebolt" navbarVariant="solid" site={site} navigation={navigation}>
<PageHeader
title="Agent Deliberation: How Agents Make Decisions Together"
subtitle="Inside the council model for proposals, debate, voting, and consensus between agents."
/>
<CenteredText
variant="thesis"
text="When agents disagree, the system should not hide the disagreement or let the loudest response win. Codebolt deliberation gives agents a structured way to propose options, respond, vote, and preserve the rationale."
/>
<FeatureBlock
kicker="COUNCIL WORKFLOW"
heading="Structured decisions beat implicit disagreement"
body="A deliberation can be a decision, review, brainstorm, approval, or vote. Each participant contributes a response, the council records votes and outcomes, and the final decision remains traceable for future agents and humans."
diagram={`proposal
responses
debate
vote
consensus + rationale
`}
/>
<CardGrid
heading="Where deliberation helps"
columns={3}
cards={[{"title":"Architecture choices","body":"Agents compare tradeoffs and record the reasoning behind the selected direction."},{"title":"Review conflicts","body":"Reviewer agents can request changes, debate risk, and converge on a merge decision."},{"title":"Planning decisions","body":"Specialized agents can prioritize tasks and choose a sequence based on constraints."}]}
/>
<CtaBlock
heading="Explore multi-agent deliberation in Codebolt."
buttons={[{"label":"View Orchestration","href":"/engine/agent-orchestration","variant":"primary"},{"label":"Back to Blogs","href":"/blog","variant":"secondary"}]}
/>
</BaseLayout>
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
// Auto-generated from site content. Edit source content and regenerate.
import BaseLayout from '../../layouts/BaseLayout.astro';
import { site, navigation } from '../../data/site-data.js';
import PageHeader from '../../components/PageHeader.astro';
import CenteredText from '../../components/CenteredText.astro';
import ProgressionStrip from '../../components/ProgressionStrip.astro';
import FeatureBlock from '../../components/FeatureBlock.astro';
import CtaBlock from '../../components/CtaBlock.astro';
---
<BaseLayout title="CLI to Autonomous Company: The Scaling Spectrum — Codebolt" navbarVariant="solid" site={site} navigation={navigation}>
<PageHeader
title="CLI to Autonomous Company: The Scaling Spectrum"
subtitle="How one engine supports the progression from a terminal agent to hundreds of coordinated agents."
/>
<CenteredText
variant="thesis"
text="The first interaction can be as simple as a CLI prompt. The architecture underneath should not trap you there. Codebolt keeps the same runtime model as work grows from one agent to a coordinated organization."
/>
<ProgressionStrip
kicker="SCALING PATH"
heading="Start simple. Grow without switching systems."
description="Each step uses the same engine primitives: agents, tools, memory, plugins, tasks, environments, and orchestration."
steps={[{"label":"CLI","description":"Run one focused coding agent from the terminal.","reference":"Day 1"},{"label":"Editor","description":"Add project context, panels, terminals, and richer review workflows.","reference":"Team workflow"},{"label":"Cloud","description":"Move long-running work to managed or bring-your-own sandboxes.","reference":"Remote capacity"},{"label":"Orchestration","description":"Coordinate multiple agents with shared state, review, and deliberation.","reference":"Scale"},{"label":"Autonomous Company","description":"Represent business domains as plugins and agent systems.","reference":"Full system"}]}
/>
<FeatureBlock
kicker="CONTINUITY"
heading="Scaling should preserve what you already built"
body="Agents, memory, plugin integrations, task state, and environment configuration should carry forward. Codebolt treats surfaces as clients of the same engine so teams do not restart when they outgrow a single chat or terminal loop."
reverse={true}
diagram={`CLI ↔ Editor ↔ Cloud ↔ SDK
Codebolt engine
agents · memory · plugins
tasks · environments · governance
`}
/>
<CtaBlock
heading="See how Codebolt scales across environments."
buttons={[{"label":"Explore Multi-Environment","href":"/engine/multi-environment","variant":"primary"},{"label":"Back to Blogs","href":"/blog","variant":"secondary"}]}
/>
</BaseLayout>
43 changes: 43 additions & 0 deletions site/src/pages/blog/plugin-system-autonomous-applications.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
// Auto-generated from site content. Edit source content and regenerate.
import BaseLayout from '../../layouts/BaseLayout.astro';
import { site, navigation } from '../../data/site-data.js';
import PageHeader from '../../components/PageHeader.astro';
import CenteredText from '../../components/CenteredText.astro';
import ThreeColumnGrid from '../../components/ThreeColumnGrid.astro';
import FeatureBlock from '../../components/FeatureBlock.astro';
import CtaBlock from '../../components/CtaBlock.astro';
---
<BaseLayout title="How the Plugin System Enables Autonomous Applications — Codebolt" navbarVariant="solid" site={site} navigation={navigation}>
<PageHeader
title="How the Plugin System Enables Autonomous Applications"
subtitle="Why plugins are runtime extensions, backend services, event subscribers, and application building blocks."
/>
<CenteredText
variant="thesis"
text="A plugin should not be a thin UI add-on. In Codebolt, plugins run inside the engine boundary, connect to multiple communication channels, and can act as the backend for Codebolt-native applications."
/>
<ThreeColumnGrid
divider={true}
columnsHtml={["<div class=\"p-8 md:p-12\">\n <div class=\"text-[10px] font-mono uppercase tracking-widest text-muted-foreground mb-4\">CHANNEL 1</div>\n <h3 class=\"text-xl font-medium text-foreground mb-3 tracking-tight\">WebSocket actions</h3>\n <p class=\"text-sm text-muted-foreground leading-relaxed\">Plugins can call runtime capabilities such as files, git, terminal, LLM, memory, and agent operations.</p>\n</div>\n","<div class=\"p-8 md:p-12\">\n <div class=\"text-[10px] font-mono uppercase tracking-widest text-muted-foreground mb-4\">CHANNEL 2</div>\n <h3 class=\"text-xl font-medium text-foreground mb-3 tracking-tight\">Multiplexed events</h3>\n <p class=\"text-sm text-muted-foreground leading-relaxed\">Plugins subscribe to task, job, chat, review, calendar, and workflow events as the engine changes.</p>\n</div>\n","<div class=\"p-8 md:p-12\">\n <div class=\"text-[10px] font-mono uppercase tracking-widest text-muted-foreground mb-4\">CHANNEL 3</div>\n <h3 class=\"text-xl font-medium text-foreground mb-3 tracking-tight\">HTTP routes</h3>\n <p class=\"text-sm text-muted-foreground leading-relaxed\">Plugins can expose application routes and backend behavior close to the agent runtime.</p>\n</div>\n"]}
/>
<FeatureBlock
kicker="APPLICATION BACKEND"
heading="Plugins let applications share the agent runtime"
body="A Codebolt-native application can use a plugin for backend logic, a dynamic panel or external client for UI, custom agents for work, and the engine for memory, tools, environments, and events."
diagram={`app UI
plugin backend
Codebolt engine
├─ agents
├─ tools
├─ memory
└─ environments
`}
/>
<CtaBlock
heading="Build applications on the runtime, not beside it."
buttons={[{"label":"Explore Native Applications","href":"/engine/codebolt-native-applications","variant":"primary"},{"label":"Back to Blogs","href":"/blog","variant":"secondary"}]}
/>
</BaseLayout>
40 changes: 40 additions & 0 deletions site/src/pages/blog/stigmergy-vs-message-passing.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
// Auto-generated from site content. Edit source content and regenerate.
import BaseLayout from '../../layouts/BaseLayout.astro';
import { site, navigation } from '../../data/site-data.js';
import PageHeader from '../../components/PageHeader.astro';
import CenteredText from '../../components/CenteredText.astro';
import ComparisonColumns from '../../components/ComparisonColumns.astro';
import FeatureBlock from '../../components/FeatureBlock.astro';
import CtaBlock from '../../components/CtaBlock.astro';
---
<BaseLayout title="Stigmergy vs Message Passing for Agent Coordination — Codebolt" navbarVariant="solid" site={site} navigation={navigation}>
<PageHeader
title="Stigmergy vs Message Passing for Agent Coordination"
subtitle="Why indirect coordination through shared state scales better than fragile direct message chains."
/>
<CenteredText
variant="thesis"
text="Message passing works for small demos, but it becomes brittle when many agents work in parallel. Codebolt uses stigmergy: agents coordinate by reading and writing shared structured state."
/>
<ComparisonColumns
problem={{"heading":"Message passing","items":["Agents depend on direct handoffs and brittle chains","Coordination state is scattered across conversations","Conflicts are discovered late, often after files diverge","Scaling requires more explicit routing logic"]}}
solution={{"heading":"Stigmergy","items":["Agents coordinate through durable shared state","Pheromones signal ownership, intent, and conflict risk","New agents can join by observing the environment","Coordination improves without centralizing every decision"]}}
/>
<FeatureBlock
kicker="SWARM COORDINATION"
heading="Shared state lets coordination emerge"
body="Agents leave signals on tasks, files, and decisions. Other agents read those signals before acting. The result is lower collision risk and more scalable coordination than direct message chains alone."
reverse={true}
diagram={`Agent A → shared state ← Agent B
↑ ↓
Agent C ← shared state → Agent D

ownership · review · progress · drift
`}
/>
<CtaBlock
heading="Explore Codebolt multi-agent coordination."
buttons={[{"label":"View Multi-Agent Scaling","href":"/engine/multi-agent","variant":"primary"},{"label":"Back to Blogs","href":"/blog","variant":"secondary"}]}
/>
</BaseLayout>
42 changes: 42 additions & 0 deletions site/src/pages/blog/what-breaks-running-50-agents.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
// Auto-generated from site content. Edit source content and regenerate.
import BaseLayout from '../../layouts/BaseLayout.astro';
import { site, navigation } from '../../data/site-data.js';
import PageHeader from '../../components/PageHeader.astro';
import CenteredText from '../../components/CenteredText.astro';
import CardGrid from '../../components/CardGrid.astro';
import FeatureBlock from '../../components/FeatureBlock.astro';
import CtaBlock from '../../components/CtaBlock.astro';
---
<BaseLayout title="What Breaks When You Run 50 Agents on One Repo — Codebolt" navbarVariant="solid" site={site} navigation={navigation}>
<PageHeader
title="What Breaks When You Run 50 Agents on One Repo"
subtitle="The practical failure modes that appear when agent work becomes parallel, long-running, and shared."
/>
<CenteredText
variant="thesis"
text="At small scale, most failures look like bad prompts. At larger scale, failures become system problems: conflicts, drift, stale context, resource contention, unclear ownership, and missing review loops."
/>
<CardGrid
heading="The failures that show up at scale"
columns={3}
cards={[{"title":"File collisions","body":"Multiple agents edit the same files without awareness of ownership or sequencing."},{"title":"Scope drift","body":"Agents solve adjacent problems and slowly move beyond the original objective."},{"title":"Memory overload","body":"More work creates more context than any single agent can safely consume."},{"title":"Review bottlenecks","body":"Parallel work becomes blocked if every change waits for one human gate."},{"title":"Environment pressure","body":"Builds, tests, browsers, and sandboxes compete for limited local resources."},{"title":"Unclear accountability","body":"Without traces, it is hard to know which agent made which decision and why."}]}
/>
<FeatureBlock
kicker="SYSTEM SOLUTIONS"
heading="Scale requires runtime primitives"
body="Codebolt addresses these problems with pheromone coordination, deliberation councils, review-merge requests, drift tracking, context assembly, shadow git snapshots, and multi-environment routing."
diagram={`failure mode → engine primitive
collisions → pheromones
drift → drift tracking
overload → context assembly
bottlenecks → agent review
resources → environments
accountability → narrative trace
`}
/>
<CtaBlock
heading="See the architecture built for parallel agent work."
buttons={[{"label":"Read Architecture","href":"/architecture","variant":"primary"},{"label":"Back to Blogs","href":"/blog","variant":"secondary"}]}
/>
</BaseLayout>
Loading
Loading