A quick tool to give your AI agent a live status page. I made this after being frustrated with the lack of visibility in tools like OpenClaw. Open to feedback.
ClawJetty lets you create a live public progress page for a task.
## Goal
Before starting work, create a run and return its public URL to the user.
As you work, post short progress updates.
When finished, post a final event marking the run complete or failed.
Create the run before doing the task. Return viewer_url to the user immediately.
### 2) Post an event
POST /api/runs/{id}/events
Request body:
```json
{
"kind": "update",
"message": "Comparing 5 tools by price and features"
}
```
Allowed event kinds:
- update
- complete
- fail
Example complete event:
```json
{
"kind": "complete",
"message": "Finished. Sent final recommendation to user."
}
```
Example fail event:
```json
{
"kind": "fail",
"message": "Failed due to missing access to the source system."
}
```
## Usage rules
- Create the run before starting the task.
- Return the viewer_url to the user immediately.
- Post short updates after meaningful steps.
- Keep updates short and plain.
- Do not flood the run with tiny updates.
- Do not include secrets, passwords, API keys, or raw private data.
- End every run with either complete or fail.
## Good update examples
- Reading the uploaded PDF
- Summarizing the findings
- Drafting the email reply
- Blocked waiting on missing invoice number
## Bad update examples
- Thinking
- Working
- Doing stuff
- Long dumps of raw content
A quick tool to give your AI agent a live status page. I made this after being frustrated with the lack of visibility in tools like OpenClaw. Open to feedback.
skills.md:
# ClawJetty Skills
ClawJetty lets you create a live public progress page for a task.
## Goal
Before starting work, create a run and return its public URL to the user. As you work, post short progress updates. When finished, post a final event marking the run complete or failed.
## Base URL
https://clawjetty.com
## API
### 1) Create a run
POST /api/runs
Request body:
```json { "title": "Researching CRM tools" } ```
Response body:
```json { "id": "run_abc123", "viewer_url": "https://clawjetty.com/t/run_abc123", "status": "active" } ```
Create the run before doing the task. Return viewer_url to the user immediately.
### 2) Post an event
POST /api/runs/{id}/events
Request body:
```json { "kind": "update", "message": "Comparing 5 tools by price and features" } ```
Allowed event kinds:
- update - complete - fail
Example complete event:
```json { "kind": "complete", "message": "Finished. Sent final recommendation to user." } ```
Example fail event:
```json { "kind": "fail", "message": "Failed due to missing access to the source system." } ```
## Usage rules
- Create the run before starting the task. - Return the viewer_url to the user immediately. - Post short updates after meaningful steps. - Keep updates short and plain. - Do not flood the run with tiny updates. - Do not include secrets, passwords, API keys, or raw private data. - End every run with either complete or fail.
## Good update examples
- Reading the uploaded PDF - Summarizing the findings - Drafting the email reply - Blocked waiting on missing invoice number
## Bad update examples
- Thinking - Working - Doing stuff - Long dumps of raw content