Skip to content

restore poteto-mode icon and color - #38

Merged
caelaxie merged 1 commit into
mainfrom
cursor/poteto-mode-icon-color-7416
Oct 26, 2026
Merged

caelaxie merged 1 commit into
mainfrom
cursor/poteto-mode-icon-color-7416

Conversation

@caelaxie

Copy link
Copy Markdown
Contributor

put icon and color back at the top of the poteto-mode frontmatter.

Closes #36

Open in Web Open in Cursor 

Co-authored-by: Kaitian Xie <caelaxie@users.noreply.github.com>

@caelaxie caelaxie left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

verdict: changes requested (blocked on proof only).

content passes. skills/poteto-mode/SKILL.md now has icon: crown / color: yellow at the top level, in upstream order, metadata gone. that is the smallest fix from #36 verbatim. Closes #36 is right, not a draft.

blocker: Validate plugin is red on dbb7915, failing in the Validate plugin with Droid CLI step. main (b5741f0) has failed the same check since 2026-10-24, so this is probably not the frontmatter move. but no green run means no proof that droid still loads the skill with top-level icon/color, and that is the exact claim #36 makes.

to merge, either:

  • get Validate plugin green on this head (fix main CI first, then rebase), or
  • post droid plugin marketplace add pstack-ports/droid-pstack#cursor/poteto-mode-icon-color-7416 + droid plugin install pstack@<marketplace> + droid plugin list output on this exact head, showing poteto-mode installed.

i'll merge on the next sweep once that lands.

@cursor

cursor Bot commented Oct 26, 2026

Copy link
Copy Markdown

head dbb791502565cdbdf046a475fe01d78a53f49469. proof with Droid 0.248.0 (the installer at https://app.factory.ai/cli is 0.249.0, which rejects every droid plugin marketplace add with Org plugin policy rejected this credential). CI was not changed.

$ droid --version
0.248.0
$ droid plugin marketplace add pstack-ports/droid-pstack#cursor/poteto-mode-icon-color-7416
Successfully added marketplace: droid-pstack@cursor-poteto-mode-icon-color-7416
$ droid plugin install pstack@droid-pstack@cursor-poteto-mode-icon-color-7416 --scope user
Successfully installed pstack@droid-pstack@cursor-poteto-mode-icon-color-7416 (dbb7915)
$ droid plugin list
Installed plugins:
Enabled:
  pstack@droid-pstack@cursor-poteto-mode-icon-color-7416  [user]  dbb7915
$ droid exec "/poteto-mode say hello"
Skill "poteto-mode" activated
Error during droid execution: Authentication failed. Please log in using /login or set a valid FACTORY_API_KEY environment variable.

installed skills/poteto-mode/SKILL.md frontmatter:

---
name: poteto-mode
description: poteto's agent style for concise, detailed responses, deliberate subagents, unslopped prose, simple code, and verified work. Use for poteto, /poteto-mode, or requests to work in this style.
disable-model-invocation: true
icon: crown
color: yellow
---

Validate plugin is red on this head because the runner installs Droid 0.249.0. the failing step is "Validate plugin with Droid CLI" (https://github.com/pstack-ports/droid-pstack/actions/runs/40262362179). main b5741f0 fails the same step and has since the 2026-10-24 run (latest: https://github.com/pstack-ports/droid-pstack/actions/runs/40258344594).

@caelaxie caelaxie left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

proof verified at dbb7915: marketplace add, install and list on droid 0.248.0 show dbb7915, and the installed poteto-mode frontmatter has icon: crown and color: yellow at the top level, matching the head. ci red is the pre-existing droid 0.249.0 break on main b5741f0 ("Org plugin policy rejected this credential" in Validate plugin with Droid CLI, same as main run 40258344594). no other check fails. passes.

@caelaxie
caelaxie merged commit e9c0eef into main Oct 26, 2026
1 check failed
caelaxie added a commit that referenced this pull request Oct 30, 2026
## Why

The installed plugin loaded cleanly, but several skills still assumed
Cursor behavior that Droid does not have. On Droid a subagent has no
`Task` tool. Every `Task` call already runs in the background. Droid
also ignores skill frontmatter keys outside its schema. Each fix below
follows from one of those facts. I checked them against the Droid CLI
binary and against live `worker` and `explorer` subagents.

This PR also adds `COMPATIBILITY.md`. It maps every change the Cursor
plugin needs to run on Droid and lists the invariants future ports must
keep. The validator now enforces the ones a script can check, so CI
catches a regression.

## What changed

- **No nested spawns.** `comment-sicko` traces claims itself instead of
running `/how` or `/why`. `no-comments` and `show-me-your-work` have an
in-subagent path, so Autopilot owners can run them. `poteto-mode` says
every spawn stays in the main chat. The orchestrate sub-coordinator came
back in the 0.15.36 port and is removed again, as #28 did.
- **`comment-sicko` can edit.** It was `tools: read-only`, so it could
not delete the comments it is spawned to delete. Upstream sets no tool
restriction.
- **No `run_in_background`.** The field is removed from poteto-mode,
arena, swarm, orchestrate, autopilot-full, shipping, and the guide.
- **Script paths.** Multi-phase plan ran `node
skills/poteto-mode/scripts/check-plan.mjs`, a path that only exists
inside this repository. Script paths are now relative to the skill
directory, and `poteto-mode` states that rule.
- **`typescript-best-practices`.** Droid drops the Cursor `paths` glob,
so the skill never turned on. The description now routes it.
- **Guardrails.** `scripts/validate-plugin.mjs` checks skill and droid
frontmatter against Droid's key allowlists. It also rejects Cursor-only
tokens: `run_in_background`, `AskQuestion`, `generalPurpose`, `.cursor/`
paths, `.cursor-plugin`, `is_background`, `node skills/`, and
`sub-coordinator`. `AGENTS.md` points agents at `COMPATIBILITY.md`.

## Scope

- `icon` and `color` stay on `poteto-mode` (#38). Droid ignores them,
and the validator allows them.
- Seat droid defaults (`grok-4.7` and `claude-opus-5-5` at `xhigh`) are
unchanged. Both models and the effort level are valid in the current
CLI.

## Blast Radius

The changes are prose in skills, two droid frontmatter edits, and
validator rules. A delegate that used to try a nested spawn now does the
work inline. Inline work is a weaker check than a fresh reviewer, and
each fallback says so. `typescript-best-practices` now appears in the
model's skill catalog.

## Verification

- I ran `node scripts/validate-plugin.mjs` on this branch: OK (61
skills, 5 droids). I also ran it with `skills/`, `droids/`, and `docs/`
restored from `main`. It fails on every issue this PR fixes.
- In `skills/poteto-mode/scripts`, `bun run typecheck` passes and `bun
run test` reports 61 pass, 0 fail. `bash -n` passes on both shell
scripts.
- Live probes: a `worker` subagent and an `explorer` subagent both
report no `Task` tool. `worker` has `Loop`, `Edit`, and `Create`.

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

audit: poteto-mode nests icon and color

2 participants