Documentation

Build, refine, save, and share small web tools with AI.

Tool AI turns prompts into multi-file HTML, CSS, and JavaScript projects. The create page keeps conversation context, streams the model response into a preview, and lets you continue editing with follow-up prompts.

Start Here

Quick Start

  1. Describe the tool. Start on the homepage with a direct prompt like “Build a mortgage calculator for first-time buyers with taxes, insurance, and a downloadable summary.”
  2. Wait for the create page. Tool AI signs you in anonymously if needed, sends the prompt, and streams a generated project into the preview.
  3. Refine with follow-ups. Ask for scoped changes such as “Keep the layout, add validation and a mobile-friendly summary.”
  4. Save or download. Anonymous users get local autosave. Signed-in users can save to cloud projects and optionally publish to the gallery.

Runtime

Generation Flow

1. Context is assembled

The server receives your current prompt, existing project files, and prior chat messages. Follow-ups can refer to “the previous version,” “that form,” or “keep the same layout.”

2. Web tools may run

If the prompt asks for current facts, docs, sources, or research, the server can search the web and read public documentation pages before final generation.

3. A provider generates files

The selected model returns a JSON project with a title, explanation, thumbnail keyword, and a files object containing complete project files.

4. Output is normalized

File paths are checked, HTML is sanitized, file sizes are bounded, and the preview is written to a temporary project URL.

Research

Web Search and Documentation Reading

Tool AI supports two web endpoints. The AI can request these on the server before generation, and generated tools can also call them at runtime when a tool needs search or documentation lookup.

GET /api/search-web

Searches the public web and returns source titles, URLs, snippets, and provider metadata.

/api/search-web?query=MDN Fetch API documentation&count=3

GET /api/read-web

Reads a public HTTP or HTTPS page, extracts readable text, and returns a source URL, title, content type, and text excerpt.

/api/read-web?url=https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API&maxChars=8000
Documentation workflow: For docs-heavy requests, ask Tool AI to search for the relevant docs page, read it, and cite the source link in the generated UI.

Better Results

Prompting Guide

Strong prompts describe the user, output, required controls, data states, and constraints. Follow-ups should say what must stay unchanged.

Build a [tool type] for [target user].
Must include: [feature 1], [feature 2], [feature 3].
Data states: empty, editing, validation error, success.
Style: [layout], [tone], [visual constraints].
Behavior: [exact interactions and edge cases].
Keep unchanged: [things the AI must preserve].

“Build a habit tracker with empty state, weekly grid, streak counter, local persistence, and mobile-friendly editing.”

“Improve spacing and button states only. Do not change the color palette, form fields, or calculation logic.”

“Use current MDN Fetch API documentation. Include examples for GET, POST, async error handling, and one visible source link.”

Models

AI Providers

Auto

Uses the free API route first and falls back to Gemini when the primary route is unavailable.

Gemini API

Server-side Gemini generation. Also used for web-tool planning before a docs-aware generation request.

Ollama route

Sends prompts through the server-side Ollama Cloud route and can use the backup route before falling back.

Puter.js

Uses Puter authentication and the selected Puter model for users who choose a Puter-backed provider.

NVIDIA

Uses the NVIDIA OpenAI-compatible API when configured on the server. The route includes a local request-rate guard.

Projects

Saving, Downloads, and Publishing

Action Requirement What happens
Local autosave Any user The browser stores the current project, files, metadata, and message history locally.
Cloud save Signed-in, non-anonymous account Project files, preview HTML, metadata, and messages are saved to Firestore.
Download ZIP A generated project The server normalizes project files and returns a ZIP with safe relative paths.
Publish to gallery Cloud project owner The project becomes public with a generated thumbnail image and gallery metadata.

Quotas

Rate Limits and Size Limits

Daily sparks 45,000

Per authenticated user, tracked by UTC day.

Weekly sparks 250,000

Per authenticated user, tracked from Sunday UTC.

Session sparks 25,000

Per authenticated user in rolling 5-hour UTC buckets.

Minimum request cost 250 sparks

Cost rises with prompt size and selected model multiplier.

How spark cost is estimated

The server estimates input tokens as roughly one token per four characters. Model multipliers currently range from 0.7x for nano/lite/haiku-style models to 2.2x for pro/reasoner/GPT-4.5/GPT-5-style models. Unknown models default near the middle.

Other limits

  • Prompt text area: 4,000 characters.
  • Saved message history: up to 100 messages.
  • Generated project: up to 80 files.
  • Single generated file: up to 300,000 bytes.
  • Total generated project payload: up to 750,000 bytes.
  • Temporary streamed preview lifetime: about 10 minutes.
  • Web page reader: up to 12,000 returned characters.
  • Web fetch body cap: 1 MB.
  • Web reader timeout: 10 seconds.
  • AI-requested web tool calls: up to 4 per generation.
  • NVIDIA server-side guard: up to 40 requests per minute by default.

Guardrails

Security and Privacy Boundaries

  • Generated HTML is sanitized before preview and save.
  • Inline event handlers such as onclick are removed.
  • Project file paths must be safe relative paths.
  • Tool AI cannot be embedded by other sites because frame ancestors are restricted to itself.
  • The web reader blocks localhost, private IP ranges, and private redirect targets.
  • Cloud project saving requires a verified, non-anonymous Firebase user.
  • Public gallery publishing requires ownership of the saved project.
API keys requested for generated tools are injected into the preview for that session. Avoid using production keys in experimental tools.

Recovery

Troubleshooting

Issue What it means What to do
Prompt is too long The message is above the 4,000-character input limit. Split the work into smaller follow-up prompts.
Usage limit reached The request would exceed daily, weekly, or session sparks. Wait for the relevant reset or use a shorter prompt/lower-cost model.
Invalid JSON returned by model The model response could not be parsed into project files. Retry with a more direct prompt asking for a complete working tool.
No tool to save There is no generated project in the preview yet. Generate a tool first, then save or download.
Project not found The project was deleted or belongs to another account. Return to Projects and open a project owned by the current account.

FAQ

Common Questions

Can I edit an existing project?

Yes. Open a saved project from Projects and continue with follow-up prompts. The current files and prior conversation are included as context.

Can Tool AI read documentation?

Yes. It can search for public pages and read public documentation text before generation. It cannot read private sites, localhost, or private-network URLs.

Why did the AI redesign something I wanted to keep?

Follow-ups should explicitly say what must remain unchanged. For example: “Keep the current layout and calculations. Only add error messages.”