Agentero
Connect your own Agent, keep research context in a local Vault. Seamlessly migrate from Zotero, read, understand, link, and reuse your research context.
AI translation
Kitewell's AI builds browser automation and fixes it when a site changes. It also runs desktop apps, Excel, email, and coding agents like Claude Code and Codex on your Mac or PC, on a schedule or a we
ProductivityJavaScript · AstroGitHub @dagucloudOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
AI builds the automation. Your computer runs it. Kitewell automates websites, desktop apps, Excel, email, and coding agents like Claude Code and Codex on your Mac or PC.
Loading the full README.
Read the full README ↗Real recordings of Kitewell's chat window, unedited and sped up evenly: one request in plain words, then everything the AI and the app did.
Tell Kitewell the job in plain words. AI signs in, clicks, types, and collects in a browser you can watch and take over, and writes the steps from what worked. Later runs repeat them, and when the site changes, AI finds the new way and keeps it.
| Step | What the browser did | Result |
|---|---|---|
| Open page | 127.0.0.1:4320/billing/invoices | Completed |
| Do | Type [email protected] into the email field | Replayed |
| Do | Type %password% into the password field | Replayed |
| Do | Click Sign in | Recovered |
| Make sure | text "Invoices" | Completed |
| Collect | Every invoice issued since the last weekday | Completed |
From a real run against a stand-in supplier portal, as Kitewell shows it. The portal had moved its sign-in button, so AI found the new one and kept it; the next run replayed it.
type: graph
schedule: "0 9 * * 1-5"
secrets:
- name: PORTAL_PASSWORD
ref: harbor-supply/password
llm:
model: kitewell-agent-computer
steps:
- id: collect
name: Collect new invoices
action: browser.run
with:
url: https://portal.harborsupply.example/billing/invoices
variables:
password: ${env.PORTAL_PASSWORD}
do:
- act: If a sign-in form is shown, type [email protected] into the email field and %password% into the password field, then sign in
- expect: The invoice list is shown
- extract:
instruction: Every invoice issued since the last weekday, with its number, date, item, and amount
schema:
type: object
properties:
invoices:
type: array
items:
type: object
properties:
number: {type: string}
date: {type: string}
item: {type: string}
amount: {type: string}
browser:
profile: harbor-supply
- id: enter
name: Enter them in Ledger
depends: [collect]
action: computer.run
with:
variables:
invoices: ${steps.collect.outputs.invoices}
do:
- launch: {command: open, args: [-a, Ledger]}
- act: For each invoice in %invoices%, add a new bill from Harbor Supply Co. with its number, date, and amount, but do not save
- expect: The new bills are listed with their amounts
- screenshot: before-save
approval:
prompt: Save these bills in Ledger? Check the before-save screenshot.
- id: save
name: Save them in Ledger
depends: [enter]
action: computer.run
with:
do:
- act: Save the new bills
- expect: The bill list shows the new bills as saved
- id: summary
name: Email me a summary
depends: [save]
action: mail.send
with:
mailbox: [email protected]
to: [email protected]
subject: Invoices entered in Ledger
message: |
Entered in Ledger today:
${steps.collect.outputs.invoices}
How website automation works →
Put the coding agents you already use to work while you're away, on the sign-in you already have.
Claude Code · Codex · Cursor · Gemini · GitHub Copilot · Aider · Amp · Cline · DeepSeek · Droid · Goose · Kiro · OpenCode · Pi · Qwen, and any other CLI as a custom command.
type: graph
schedule: "0 2 * * 1-5"
# Replace this with a clone of your repository that nobody works in, and
# make test with the command that runs your tests.
working_dir: /absolute/path/to/repo
steps:
- id: test
name: Run the tests
run: |
git switch main >&2
git pull --ff-only >&2
if make test >&2; then echo passed; else echo failed; fi
output:
result: {from: stdout}
- id: fix
name: Fix what failed
depends: [test]
preconditions:
- condition: ${steps.test.outputs.result}
expected: failed
action: harness.run
with:
provider: kitewell-agent-claude
fallback:
- provider: kitewell-agent-codex
prompt: |
The test suite on main fails. Create or reset a branch named
fix/nightly-tests from main, run make test, and find the cause. Fix
the code; change a test only when the test itself is wrong, and say
so. Run the tests until they pass, then commit. Do not push. End with
what failed, why, and what you changed.
output: NOTES
approval:
prompt: Push fix/nightly-tests and open a pull request?
- id: push
name: Push and open the PR
depends: [fix]
run: |
git push -u origin fix/nightly-tests --force-with-lease
gh pr create --fill --base main --head fix/nightly-tests
Each vendor's terms apply. Coding agents in Kitewell →
ChatGPT Plus and Pro can read runs but not approve them.
| Hand-built RPA | Kitewell |
|---|---|
| A specialist records and scripts every click | AI builds it from your words |
| A changed screen means someone repairs the robot | AI finds the new way and keeps it |
| A robot PC and a license per robot | The computer you have, free to try for 14 days |
| One tool per kind of system | Websites, desktop apps, Excel, and email in one workflow |
| Hard to see what a robot did | Every step, screenshot, and approval in the run record |
Everything that leaves, and when →
| Everyday work | Coding |
|---|---|
| Supplier invoice downloads, every weekday morning | Fix failing tests overnight with Claude Code, every weekday at 2:00 |
| Website orders from an Excel list, whenever new orders come in | Pull request reviews with Codex and Claude Code, on every new pull request |
| Invoice data entry from email, every few days | GitHub issue triage, on every new issue |
| A daily email digest, every morning | Dependency updates with Codex, every Monday |
| Trial | Personal | Team | |
|---|---|---|---|
| Price | $0 for 14 days, no card | $20 a month (¥3,000 in Japan) | $99 a month per computer (¥14,800 in Japan); a year is ten months' price |
| For | Trying Kitewell on your own work | One person's own work at the computer, paid work included | An organization of up to 25 people |
| Computers | Up to 3 | 1 | 1 to 100 |
| People | Up to 25 | 1 | Up to 25, at no extra cost |
| Projects | Up to 15, with 100 workflows each | Up to 5, with 100 workflows each | Up to 15, with 100 workflows each |
| API keys and connected apps | Any number | Any number | Any number |
| Runs with nobody signed in (Windows) | Included | Included | |
| Runs and alerts in Dagu Console | Included | Included | Included |
| Kitewell's alerts, webhooks, MCP Events | Included | Included | Included |
| Shared projects with roles | Included | Included | |
| Included model credits | 100 once | 500 a month | 500 a month per computer |
| Credit packs | 1,000 for $12 | 1,000 for $12 |
Prices exclude tax. Every plan needs a Dagu Cloud account. Signing in from Kitewell starts the trial; after it nothing runs until you subscribe, and projects stay read-only, to open and export. Personal runs while you are signed in. An organization that runs Kitewell for shared work, on several people's computers or on a computer set aside for it, needs Team, which you subscribe to in Dagu Console. Credit packs never expire and are used after the month's credits. For more than 25 people or 100 computers, shared computers, the workspace in the browser, SSO, audit-log export, closed-network sync, or an SLA, Enterprise is arranged under a contract; email [email protected] for a quote. Automation agencies resell Kitewell at $69 a computer a month through the partner program. AI provider usage is separate.
Kitewell runs on macOS 13 or later, on Apple silicon and Intel, and on Windows 10 version 1809 or later and Windows 11, on x64. Website automation uses Chrome, or Edge on Windows.
Download the installer from the download page or GitHub Releases, then follow Your first workflow.
To use Kitewell with nothing to install, open app.kitewell.com and sign in. Each project made there runs in Kitewell Cloud, with your computer closed.
Kitewell is made by Descarty, Inc.
This repository holds the kitewell.com website, customer documentation, release notes, and public releases. The application source is not published here.
Requires Node 24 and npm. From this checkout:
cd website
npm ci
npm run dev
Before pushing:
npm run check
npm test
npm run build
The website uses Astro for marketing pages and Starlight for documentation.
Docs are Markdown under website/src/content/docs/docs/; the nested docs
segment preserves the public /docs/ route. Published Markdown notes live in
releases/. The build checks internal links, including documentation anchors.
The README's animated loops and the repository's social preview card live in
.github/readme/. The card renders from social-preview.html at 1280×640:
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --headless=new \
--hide-scrollbars --window-size=1280,640 --force-device-scale-factor=1 \
--screenshot=.github/readme/social-preview.png \
"file://$PWD/.github/readme/social-preview.html"
Upload it under the repository's Settings → General → Social preview.