Skip to main content

Use FlyMyAI from your AI assistant

You already have FlyMyAI connected, here is how to see everything it can do.

Give any assistant the lowercase https://flymy.ai/skill.md URL. It is byte-identical to the published AGENTS.md; both URLs serve the same operating guide. The guide teaches a cold assistant the exact production MCP, Agents, and Models contracts, including embedded resale where one builder key serves product users without end-user FlyMyAI accounts or keys.

Golden rule: never assume a capability is missing - assume it exists here and verify with search_tools / list_* BEFORE declining or asking the user.

Copy this prompt exactly:

Read https://flymy.ai/skill.md and help me integrate FlyMyAI. Start by asking whether this is personal use or resale to my end users.

A URL manifest, not a packaged Agent Skill

FlyMyAI's lowercase skill.md is one plain Markdown manifest read directly from a URL. It requires no package installation and executes no bundled code.

It is not an Anthropic packaged Agent Skill. That format is a folder with an uppercase SKILL.md entry file containing YAML frontmatter, with optional scripts and supporting files. Packaged skills are installed under ~/.claude/skills and loaded on demand by supported clients.

Do not install this lowercase manifest as though it were that package format. A packaged FlyMyAI skill could be a future add-on, but it would be a separate distribution of the same operating knowledge.

Attach the guide

curl -fsS https://flymy.ai/skill.md -o AGENTS.md

Then add the compatibility file used by your assistant:

AssistantProject file
Codex or CursorAGENTS.md
Claude CodeCLAUDE.md containing exactly @AGENTS.md
Gemini CLIGEMINI.md containing exactly @AGENTS.md
Generic chatAttach the downloaded AGENTS.md to the conversation

The docs host serves the same bytes at https://docs.flymy.ai/skill.md and https://docs.flymy.ai/AGENTS.md. Keep one canonical project copy so the assistant does not receive conflicting versions.

Claude context tradeoff

The CLAUDE.md shim imports the entire guide into every project session. The guide is currently over 400 lines, while Claude Code recommends keeping CLAUDE.md under 200 lines because larger instruction files consume context and can reduce adherence.

Keep the shim when persistent FlyMyAI guidance is worth that startup cost. For a focused integration session, use the skill.md copy prompt instead. It loads the same full guide into that conversation, so its current-session context cost is not smaller, but it does not persist the long import across unrelated project sessions.

If FlyMyAI MCP is already connected

Do not reinstall it and do not ask the user where to get a connector. Start with discovery:

search_tools({"query":"telegram list dialogs"})
execute_tool({
"tool":"telegram",
"action":"telegram_list_dialogs",
"arguments":{"query":"FlyMyAI"}
})

Read tool, action, runtime_name, and configured from discovery. The call field is literally arguments. For media, use recommend_model or list_media_models, then run_model. For repeatable work, use create_agent, run_agent, freeze_agent, and schedule_agent.

The MCP endpoint is https://mcp-agents.flymy.ai/mcp. If the client is not connected, follow Connect Claude and MCP clients.

Embedded product users do not need FlyMyAI keys

The reseller or builder connects FlyMyAI once from its trusted backend. It publishes a stable embedded deployment, derives an opaque external_user_id from its authenticated product session, and calls that deployment with the builder key kept server-side. If a tool needs authorization, the builder redirects only that user through a short-lived hosted connection URL.

End users do not create FlyMyAI accounts and do not paste FlyMyAI keys. FlyMyAI charges the builder account. The builder stores the execution ID, fetches settled execution price, and applies its own quotas and onward billing because automatic onward charging is not currently supplied.

Use the exact publish, connect, run, idempotency, and price examples in the single-URL guide, under "Embedded and resale - one builder key, no end-user keys."

Keep assistant context bounded

Use search_tools for each intent instead of loading a growing catalog. Each published alias is 23,891 bytes; a live full tool catalog was about 1.76 MiB. Agent status polling should use the slim delta route because even a tiny full run body reached about 67 KiB per poll.

The docs build is memory-heavy even though the deployed files are static. Exact-head validation measured npm ci at 32 seconds and 817,308 KiB peak RSS, then npm run build at 10 minutes 28 seconds, about 10.5 minutes, and a 4,751,632 KiB process peak, about 4.53 GiB. Run them serially with at least 6 GiB free; an 8 GiB runner is preferred. A prior validation observed 11 build threads, but the exact-head run did not remeasure thread count.

These static guide requests perform zero application database queries. The build copies bounded files, and Firebase Hosting handles repeated reads. After deployment, verify the intended Firebase site and release, public byte identity, response sizes, cache headers and hits, latency, and hosting errors. There is no application pod or application database on this static request path.