Repository navigation
[Cloud env] add UI agent guidance #3694
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,65 @@ | ||
| --- | ||
| name: end-user-ui | ||
| description: >- | ||
| End-user UX for node_web_interface (React) and web_interface (Flask/templates): | ||
| entry-level trading terms OK, no pro-trader jargon, minimal UI, situational focus, | ||
| no AI slop, no em dash in UI strings. Apply on any UI copy, | ||
| layout, error, or help change. | ||
| paths: | ||
| - packages/tentacles/Services/Interfaces/node_web_interface/** | ||
| - packages/tentacles/Services/Interfaces/web_interface/** | ||
| --- | ||
|
|
||
| # End-user UI (node + classic web) | ||
|
|
||
| Apply whenever you change user-visible copy, layout, errors, or help in the Node React UI or the classic Flask web UI tentacles. | ||
|
|
||
| ## Sources only (tentacles) | ||
|
|
||
| - Edit UI only under `packages/tentacles/Services/Interfaces/node_web_interface/` or `packages/tentacles/Services/Interfaces/web_interface/`. | ||
| - Do not open or patch repo-root `tentacles/` (install output). After tentacles source changes: `bash .cursor/reinstall-tentacles.sh`. | ||
|
|
||
| Colocated guides: `packages/tentacles/Services/Interfaces/node_web_interface/AGENTS.md`, `.../web_interface/AGENTS.md`. Technical Node UI workflow (when present in the monorepo): workspace skill **node-web-interface-workflow**; cloud agents: skill **octobot-cloud** and `node_web_interface/README.md` for npm cwd. | ||
|
|
||
| ## Audience | ||
|
|
||
| - Assume an **average non-technical** user who may be new to OctoBot but is using a **trading bot**. Not a developer, not a pro desk. | ||
| - One primary goal per screen or step: show status, fix one problem, or confirm one action. | ||
|
|
||
| ## Language: entry-level trading OK; pro/advanced not | ||
|
|
||
| - **OK:** everyday trading vocabulary users expect: buy/sell, order, pair, exchange, balance, profit/loss, stop loss, take profit, market/limit, position (when the feature uses it). Keep terms **short and consistent** with labels elsewhere in the app. | ||
| - **Avoid:** advanced or pro-trader jargon: maker/taker fee tiers, funding rate mechanics, delta-neutral, basis, slippage models, OCO/iceberg unless the UI is explicitly an advanced screen; desk slang; dense acronyms without expansion on first use in that flow. | ||
| - **Dev/infra:** still translate. Avoid "credentials", "auth payload", "session invalidated" without plain-language equivalent ("password" / "passphrase" per product). | ||
|
|
||
| ## Understandable | ||
|
|
||
| - Short sentences; active voice; say what happened and what to do next. | ||
| - If a term is required, prefer **entry-level trading** over **pro**; add one short gloss only when the screen cannot work without it (not a glossary block). | ||
| - Errors: **title + one explanation**; optional **at most 1–2** tips only when they change behavior. Not a wall of suggestions. | ||
|
|
||
| ## Simple (less is better) | ||
|
|
||
| - Remove or defer secondary info, debug detail, and duplicate controls. | ||
| - Progressive disclosure: advanced fields behind "Advanced" or debug routes only (`/app/debug` stays operator-facing). | ||
| - Empty states: one line what this is plus one action. Not essays. | ||
|
|
||
| ## No AI slop | ||
|
|
||
| - Ban list (examples): filler openers ("Certainly", "Great question"), **marketing** buzzwords ("seamless", "robust", "empower", "leverage" as hype), emoji decoration, generic tip lists, three-panel "guidance" when one line suffices, marketing tone in errors. | ||
| - **No em dash (`—`) in user-visible UI copy** (labels, titles, errors, toasts, template text). Use a period, comma, colon, or parentheses instead; match punctuation already used on the same screen. | ||
| - Match **existing** OctoBot/Node UI tone in nearby components; read siblings before inventing new patterns. | ||
| - Do not add UI "just to be helpful" if Vitest/API already cover behavior; user-visible text must earn its space. | ||
|
|
||
| ## By stack | ||
|
|
||
| | Stack | Where copy lives | | ||
| |-------|------------------| | ||
| | `node_web_interface` | React components, route copy, toasts; keep logic in code/tests per skill **octobot-cloud** (Vitest, no e2e). | | ||
| | `web_interface` | Jinja templates, flash messages, modal titles; Python strings visible in templates. | | ||
|
|
||
| ## Before handoff (UI PR) | ||
|
|
||
| - Re-read changed strings aloud as a non-expert. | ||
| - `npm test` in `packages/tentacles/Services/Interfaces/node_web_interface/` when touched; pytest for `web_interface/tests` when touched. | ||
| - No new Playwright e2e; agent-seed only if the user asked for live QA. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
38 changes: 38 additions & 0 deletions
38
packages/tentacles/Services/Interfaces/node_web_interface/AGENTS.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,38 @@ | ||
| # Agents: node_web_interface | ||
|
|
||
| ## Role | ||
|
|
||
| Node product **React** web UI (`octobot-node`): Vite, TanStack Router/Query, Tailwind. Built bundle in `dist/` ships with the tentacle. | ||
|
|
||
| ## End-user UX (mandatory) | ||
|
|
||
| Read skill **end-user-ui** (`.cursor/skills/end-user-ui/SKILL.md`) before any user-visible copy, layout, error, or help change. | ||
|
|
||
| - Entry-level trading terms OK; no pro-trader jargon. | ||
| - Minimal UI; one primary goal per screen. | ||
| - No AI slop; no em dash (`—`) in user-visible strings. | ||
|
|
||
| ## Owns | ||
|
|
||
| - `src/`, tests, `package.json` under **this** `packages/tentacles/.../node_web_interface/` path | ||
| - Not `src/client/*` (generated via `npm run generate-client`) | ||
| - Not repo-root `tentacles/` (install output) | ||
|
|
||
| ## Do not | ||
|
|
||
| - Edit repo-root `tentacles/`; after source changes run `bash .cursor/reinstall-tentacles.sh` | ||
| - Hand-edit `openapi.json` or generated client files (see [`../../../AGENTS.md`](../../../AGENTS.md#node-rest-openapi-node_api_interface--node_web_interface)) | ||
| - Add Playwright e2e under `e2e/` (`path.deny_node_web_playwright_e2e`) | ||
|
|
||
| ## Tests | ||
|
|
||
| - `npm test` (Vitest) from this directory; see [README.md](README.md) | ||
|
|
||
| ## Related | ||
|
|
||
| - Tentacles index: [`packages/tentacles/AGENTS.md`](../../../AGENTS.md) | ||
| - Node REST OpenAPI: `node_api_interface` tentacle (same parent `Services/Interfaces/`) | ||
|
|
||
| ## Last reviewed | ||
|
|
||
| - 2026-09-19 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
34 changes: 34 additions & 0 deletions
34
packages/tentacles/Services/Interfaces/web_interface/AGENTS.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,34 @@ | ||
| # Agents: web_interface | ||
|
|
||
| ## Role | ||
|
|
||
| Classic OctoBot **Flask** web UI: Jinja templates, static assets, and controllers that drive user-facing pages. | ||
|
|
||
| ## End-user UX (mandatory) | ||
|
|
||
| Read skill **end-user-ui** (`.cursor/skills/end-user-ui/SKILL.md`) before templates, flash messages, modal titles, or any user-visible string change. | ||
|
|
||
| - Entry-level trading terms OK; no pro-trader jargon. | ||
| - Minimal UI; one primary goal per screen. | ||
| - No AI slop; no em dash (`—`) in user-visible strings. | ||
|
|
||
| ## Owns | ||
|
|
||
| - `templates/`, `static/`, and user-visible controller copy under **this** `packages/tentacles/.../web_interface/` path | ||
| - Tests under `tests/` when present | ||
|
|
||
| ## Do not | ||
|
|
||
| - Edit repo-root `tentacles/` (install output). After source changes: `bash .cursor/reinstall-tentacles.sh` | ||
|
|
||
| ## Tests | ||
|
|
||
| - Pytest under this tentacle's `tests/` when present; follow [`packages/tentacles/AGENTS.md`](../../../AGENTS.md) for broader tentacles pytest invocations | ||
|
|
||
| ## Related | ||
|
|
||
| - Tentacles index: [`packages/tentacles/AGENTS.md`](../../../AGENTS.md) | ||
|
|
||
| ## Last reviewed | ||
|
|
||
| - 2026-09-19 |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍