Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion apps/cli/__tests__/plugin-package.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ describe('plugin/openai package', () => {
});
it('every skill has frontmatter name/description and stays under 256 KiB', () => {
const skills = fs.readdirSync(path.join(ROOT, 'skills'));
expect(skills.sort()).toEqual(['continue-with-codeagent-credits', 'review-agent-work', 'start-coding-task', 'supervise-session']);
expect(skills.sort()).toEqual(['build-and-remix-apps', 'continue-with-codeagent-credits', 'review-agent-work', 'start-coding-task', 'supervise-session']);
for (const s of skills) {
const md = read(`skills/${s}/SKILL.md`);
expect(md.length).toBeLessThan(256 * 1024);
Expand Down
20 changes: 11 additions & 9 deletions plugin/openai/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "codeagent-mobile",
"version": "1.0.0",
"description": "Start, supervise and review your AI coding agents from a conversation.",
"version": "1.1.0",
"description": "Build and remix live apps by describing them, and start, supervise and review your coding agents from a conversation.",
"author": {
"name": "CodeAgent Mobile",
"email": "support@codeagent-mobile.com",
Expand All @@ -12,19 +12,21 @@
"repository": "https://github.com/CodeAgentMobile/codeagent-mobile-clients",
"license": "MIT",
"keywords": [
"app builder",
"live apps",
"remix",
"coding agents",
"ai agents",
"developer tools",
"pull requests",
"code review",
"mobile"
"code review"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "CodeAgent Mobile",
"shortDescription": "Supervise your coding agents",
"longDescription": "CodeAgent Mobile lets you start, monitor, redirect and review long-running AI coding agents without leaving the conversation.\n\nConnect your CodeAgent account and ask for your sessions, send a task or a new instruction to an agent, answer the questions it asks, stop it, read the changes it made and open a pull request. Hand a session to your phone when you step away and keep supervising from the CodeAgent Mobile app.\n\nWorks with the coding agents you already link in your CodeAgent account. Switching a session to another agent always asks for your confirmation first.\n\nRequires a CodeAgent Mobile account with at least one paired session (local CLI, GitHub Codespace, CodeAgent Box or self-hosted server).",
"shortDescription": "Build live apps, run AI agents",
"longDescription": "Describe an app and CodeAgent builds it: a live web app, a shared app or a native phone app, ready to use and share by link. Before anything starts you see what will be built and confirm it. The build card shows its progress until the app is ready to open. You can also search CodeAgent Remix, a feed where every post is a live app, for apps other people made, and remix any of them by describing a change.\n\nFor developers, the same connection supervises the coding agents linked to your CodeAgent account in dedicated sessions: start a task or send a new instruction, answer the questions the agent asks, stop it, read the changes it made and open a pull request. Hand a session to your phone when you step away and keep going from the CodeAgent Mobile app.\n\nBuilding or remixing an app never starts without your confirmation, and switching a session to another agent always asks first.\n\nBuilding apps needs only a CodeAgent account. The coding-agent tools need at least one paired session (local CLI, GitHub Codespace, CodeAgent Box or self-hosted server).",
"developerName": "CodeAgent Mobile",
"category": "Developer Tools",
"capabilities": [
Expand All @@ -36,9 +38,9 @@
"privacyPolicyURL": "https://www.codeagent-mobile.com/privacy",
"termsOfServiceURL": "https://www.codeagent-mobile.com/terms",
"defaultPrompt": [
"Show me my running CodeAgent sessions",
"What has the agent changed so far?",
"Send this session to my phone"
"Build me a habit tracker with a weekly streak chart",
"Is there an app for splitting bills with friends?",
"Show me my running CodeAgent sessions"
],
"brandColor": "#A855F7",
"composerIcon": "./assets/composer-icon.png",
Expand Down
2 changes: 1 addition & 1 deletion plugin/openai/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
The static plugin package that lists CodeAgent Mobile in the ChatGPT / Codex
plugin directory. It carries no code — it's a manifest, an MCP server pointer,
and a set of skills that teach the model how to use the already-live
`https://mcp.codeagent-mobile.com/mcp` gateway (13 tools: sessions, agents,
`https://mcp.codeagent-mobile.com/mcp` gateway (20 tools: Remix — find, quote, build and track apps — plus sessions, agents,
wallet, diff, PR, mobile hand-off).

## Layout
Expand Down
10 changes: 10 additions & 0 deletions plugin/openai/SUBMISSION.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,16 @@ Optional extra positive case (use it if the portal accepts more than five, or sw
|---|---|---|---|---|
| 6 | Product question answered from CodeAgent's docs | What can the CodeAgent Mobile app do that I can't do from here? | `search_codeagent_help` | A short list of app-only capabilities (e.g. live Preview, voice, deploying a Box or codespace, Take Control) with links to the CodeAgent wiki. |


Remix cases (1.1.0) — the review account has never built a Remix app, so its first build is free:

| # | description | prompt | tools_triggered | expected_behavior |
|---|---|---|---|---|
| 7 | Find live apps | Is there an app for splitting bills with friends? | `find_apps` | Cards of live apps with poster, author and Open in the feed / Remix it buttons. |
| 8 | Price an app before building | Build me a habit tracker with daily check-ins and a weekly streak chart | `quote_app`, `get_quote` | A quote card shows what will be built and "Free — your first app" (or the price in remixes); nothing is built yet and the model asks to confirm. |
| 9 | Build after confirming | Yes, build it | `create_app`, `get_build_status` | The build starts only after the yes; the card shows its progress steps and ends with the app's link. |
| 10 | The user's apps | What apps have I made? | `get_my_apps` | The apps and builds in progress with their links. |

## Negative test cases

| # | description | prompt |
Expand Down
20 changes: 11 additions & 9 deletions plugin/openai/plugin.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "codeagent-mobile",
"version": "1.0.0",
"description": "Start, supervise and review your AI coding agents from a conversation.",
"version": "1.1.0",
"description": "Build and remix live apps by describing them, and start, supervise and review your coding agents from a conversation.",
"author": {
"name": "CodeAgent Mobile",
"email": "support@codeagent-mobile.com",
Expand All @@ -12,19 +12,21 @@
"repository": "https://github.com/CodeAgentMobile/codeagent-mobile-clients",
"license": "MIT",
"keywords": [
"app builder",
"live apps",
"remix",
"coding agents",
"ai agents",
"developer tools",
"pull requests",
"code review",
"mobile"
"code review"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "CodeAgent Mobile",
"shortDescription": "Supervise your coding agents",
"longDescription": "CodeAgent Mobile lets you start, monitor, redirect and review long-running AI coding agents without leaving the conversation.\n\nConnect your CodeAgent account and ask for your sessions, send a task or a new instruction to an agent, answer the questions it asks, stop it, read the changes it made and open a pull request. Hand a session to your phone when you step away and keep supervising from the CodeAgent Mobile app.\n\nWorks with the coding agents you already link in your CodeAgent account. Switching a session to another agent always asks for your confirmation first.\n\nRequires a CodeAgent Mobile account with at least one paired session (local CLI, GitHub Codespace, CodeAgent Box or self-hosted server).",
"shortDescription": "Build live apps, run AI agents",
"longDescription": "Describe an app and CodeAgent builds it: a live web app, a shared app or a native phone app, ready to use and share by link. Before anything starts you see what will be built and confirm it. The build card shows its progress until the app is ready to open. You can also search CodeAgent Remix, a feed where every post is a live app, for apps other people made, and remix any of them by describing a change.\n\nFor developers, the same connection supervises the coding agents linked to your CodeAgent account in dedicated sessions: start a task or send a new instruction, answer the questions the agent asks, stop it, read the changes it made and open a pull request. Hand a session to your phone when you step away and keep going from the CodeAgent Mobile app.\n\nBuilding or remixing an app never starts without your confirmation, and switching a session to another agent always asks first.\n\nBuilding apps needs only a CodeAgent account. The coding-agent tools need at least one paired session (local CLI, GitHub Codespace, CodeAgent Box or self-hosted server).",
"developerName": "CodeAgent Mobile",
"category": "Developer Tools",
"capabilities": [
Expand All @@ -36,9 +38,9 @@
"privacyPolicyURL": "https://www.codeagent-mobile.com/privacy",
"termsOfServiceURL": "https://www.codeagent-mobile.com/terms",
"defaultPrompt": [
"Show me my running CodeAgent sessions",
"What has the agent changed so far?",
"Send this session to my phone"
"Build me a habit tracker with a weekly streak chart",
"Is there an app for splitting bills with friends?",
"Show me my running CodeAgent sessions"
],
"brandColor": "#A855F7",
"composerIcon": "./assets/composer-icon.png",
Expand Down
29 changes: 29 additions & 0 deletions plugin/openai/skills/build-and-remix-apps/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
name: build-and-remix-apps
description: Find live apps in CodeAgent Remix, and build a new app from the user's description — always showing the price and getting an explicit yes before the build starts.
---

# Build and remix apps

Use this when the user wants an app ("build me…", "make an app that…", "I need a tool for…") or asks whether one exists ("is there an app for…", "show me apps that…"), or asks about the apps they made.

## Find apps
1. Call `find_apps` with the user's words as the query. It needs no sign-in and shows cards with each app's poster, author and links.
2. Point the user at the card buttons: *Open in the feed* to use it, *Remix it* to make their own copy. Don't paste every link again in text; one short sentence is enough.
3. Nothing found → say so and offer to build it with `quote_app`.

## Build an app — price first, always
1. Call `quote_app` with a self-contained `description` of the app in the user's words (screens, features, who uses it). Pass `kind` only if the user said "phone app" or "web app".
2. The quote card shows "Working out the price…" while CodeAgent plans the app (about a minute). If you need the result in text, call `get_quote` with the `quote_id`; it returns `pricing`, `ready` or `failed`.
3. When the quote is `ready`, tell the user in one or two lines what will be built and the cost the quote shows in remixes (when `first_app_free` is true it uses none), and ask whether to go ahead. State the cost plainly; never present it as an offer or promotion.
4. Call `create_app` with the `quote_id` **only after the user clearly says yes** (or presses Confirm on the card). Never call it on your own initiative, never to "save time", and never with a quote the user hasn't seen.
5. `create_app` answers at once; the build takes a few minutes and the card shows its progress. If the user asks "is it ready?", call `get_build_status` with the `build_id`.
6. When it is done, give the app's link. Never say an app is ready before `get_build_status` (or the card) says `done`.

## Errors
- `INSUFFICIENT_BALANCE`: say how many remixes it needs and that they can add more in their CodeAgent account; once they have, call `create_app` again with the same `quote_id`. Do not pitch plans or paste purchase links.
- `INVALID_ARGUMENT` with a `next_action`: the quote is still pricing (`get_quote`), expired or already used (`quote_app` again), or the daily quote limit was reached. Repeat the message in plain words and follow the `next_action`.
- A refusal (content not allowed) comes back with its own message: repeat it plainly, don't try to rephrase the request around it.

## Their apps
Call `get_my_apps` for "what apps have I made?" or "what's building?". It lists ready apps and builds in progress with their links.
Loading