Vim Diesel is a personal workflow agent that watches how someone completes a repeated task in the browser and quietly turns that behavior into a small reusable tool.
The core idea comes directly from SPEC.md:
- It is not browser automation.
- It is not a chatbot.
- It is a personal tool factory that captures how a worker thinks, then rebuilds that workflow as a self-contained tool.
In the current demo, Bob exports a CSV, cleans it up in Excel, and the system learns that pattern. On the next day, Vim offers to generate a tool for the same workflow, then later updates that tool when a reviewer email changes the formula.
extension/Chrome extension built with Plasmo. Handles capture, page suggestions, popup UI, and showcase launching.backend/FastAPI app for demo state, tool APIs, storage, artifact serving, and orchestration stubs.ai/AI-side prompt logic, model clients, heuristics, and showcase summarization/update planning.runtime/Shared primitives for generated tools.fixtures/Mock sites, seeded tools, sample artifacts, and demo data.demo/Mirrored standalone demo copies of the main showcase page.SPEC.mdProduct, architecture, and build spec that defines the system direction.
Run the backend on port 8000:
python3 -m uvicorn backend.app.main:app --reload --port 8000Serve the mock sites on port 8012:
python3 -m http.server 8012 --directory fixtures/mock_sitesMain demo URL:
http://127.0.0.1:8012/portal.example.com/leads/
Install dependencies and build the extension:
cd extension
npm install
npm run buildFrom extension/:
npm run showcase:launchThis launches the showcase browser flow and opens the main demo page.
- Root served showcase:
fixtures/mock_sites/portal.example.com/leads/index.html - Mirrored copies:
demo/demo.htmldemo/demo2.html
At a high level, the system has four layers:
The extension captures signals from the worker's repeated actions:
- clicks
- inputs
- downloads
- navigation context
It also decides when to surface a helper/tool suggestion on the current page.
The backend stores observed events and tool state, serves tool artifacts, and drives the showcase demo state machine. In the demo flow it is also responsible for:
- advancing the “next day” story
- storing graph state
- tracking workbook/tool/email state
- serving downloadable CSV/XLSX artifacts
The AI layer detects patterns and plans updates to tools. For the showcase flow, it mainly helps with:
- summarizing the current workflow state
- converting email/change requests into structured formula updates
- falling back to deterministic heuristics when live model behavior is unavailable
Generated tools are designed as self-contained HTML artifacts with embedded JS behavior. The long-term architectural goal is that the same tool can be used:
- by a human through UI
- by a future agent through a programmatic interface
- Bob exports a shortlist CSV from the deal portal.
- Bob cleans the workbook in Excel.
- The graph records the workflow and formula context.
- On the next day, Vim offers to generate a tool from that repeated behavior.
- The tool can re-run the CSV-to-Excel transformation.
- An Outlook email can request a formula update.
- Vim updates the tool and records that change in the workflow graph.
SPEC.mddocs/CONTRACTS.mdbackend/README.mdextension/README.mddemo/README.md