make-bot-ui
Use when building a local page or dashboard whose fixed buttons start approved Codex CLI tasks, with optional tailnet-only access.
Skill by nahuelb
Chalk Labs
Need help deploying make-bot-ui?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/nahuelb-make-bot-ui
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, data, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/make-bot-ui
What's inside
- Skill name
make-bot-ui- Description
- Use when building a local page or dashboard whose fixed buttons start approved Codex CLI tasks, with optional tailnet-only access.
- License
- MIT
- Instructions
- 67 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
# Make a Codex task UI Build a small local page whose buttons start fixed Codex tasks on the same computer. Keep the action map on the server. Do not let the browser supply a shell command, project path, model, flag, or free-form prompt. Codex scheduled tasks do not provide generic webhook ingress for local projects. Do not claim that a button wakes an existing desktop task. If the user needs an existing task to resume, stop and explain that this path is unsupported. Offer a scheduled task or a new bounded CLI run instead. ## Confirm the action contract Before writing code, agree on each button's: - stable action ID and label - fixed project directory - fixed prompt or prompt template with named, validated fields - allowed external effects - timeout and concurrency rule - success evidence shown in the UI Reject actions that need secrets from the browser or accept arbitrary instructions. Keep credentials in the local process environment or an approved secret store. Never place credentials in HTML, JavaScript, URLs, logs, or committed files. ## Build the local server Serve the page from the same process that handles button requests. Bind to `127.0.0.1` by default. For every request: 1. Require `POST` and JSON. 2. Enforce same-origin requests. 3. Match one server-owned action ID. 4. Validate every input against a narrow schema. 5. Build the prompt from server-owned text. 6. start `codex` with an argument array and no shell. 7. Record the run ID, start time, exit status, and a redacted output summary. Use a bounded queue. Default to one active task. Reject duplicate action IDs while the same action is active. Set a timeout and terminate the child process if it expires. The project directory must be an absolute path chosen during setup. Resolve it once and reject symlinks or paths outside the approved project roots. ## Start Codex Check that the `codex` executable exists before enabling buttons. Use `codex exec` for a new bounded run. Keep approval, sandbox, model, and reasoning settings at their configured defaults unless the user explicitly chose different values during setup. Do not add `--dangerously-bypass-approvals-and-sandbox`, `--full-auto`, or equivalent broad authority. Do not run a user-provided command through `sh`, `bash`, `zsh`, or another shell. If a task needs external writes, encode the exact destination and effect in the fixed action contract. The button press authorizes only that declared action. It does not authorize new destinations or broader effects discovered during execution. ## Optional tailnet access Keep localhost-only access unless the user asks for remote access. Prefer Tailscale Serve over binding the application to every network interface. If Tailscale is already online, expose the localhost service only to the tailnet. Show the user the resulting tailnet URL. Do not install Tailscale or change its node configuration without explicit approval. Do not expose the service to the public internet. Do not use an unauthenticated public tunnel. Treat tailnet membership as transport control, not as authority to add arbitrary actions. ## Verify it Before calling the UI ready: 1. Test an unknown action ID and expect rejection. 2. Test malformed input and expect rejection. 3. Confirm concurrent duplicate requests do not start two tasks. 4. Run one harmless fixed action after the user approves the test. 5. Confirm the UI reports the child exit status without exposing the full prompt or secrets. 6. Confirm the repository contains no credentials or generated run logs. Stop if the host lacks the Codex CLI, the project path cannot be fixed safely, or the requested action requires unsupported webhook delivery.
From nahuelb/pstack-codex, MIT.
More from nahuelb/pstack-codex
- 0.564score
architect
nahuelb
Sketch types, signatures, and module structure before code, then stay in the loop while implementation fills in.
SkillAFreshness: A★ 1Claude Code +9 - 0.559score
arena
nahuelb
Spawn N parallel candidates at the same task, pick a base, graft the strongest parts of the losers into it.
SkillAFreshness: A★ 1Claude Code +9 - 0.549score
conversation-audit
nahuelb
Deeply audit a supplied Codex conversation for subagent and pstack-role token usage, model routing, timing, decisions, verification, and workflow performance.
SkillBFreshness: B★ 1Claude Code +9 - 0.524score
interrogate
nahuelb
Use for "interrogate", "adversarial review", "multi-model review", "challenge this", "stress test this code", "find blind spots", or "tear this apart".
SkillBFreshness: B★ 1Claude Code +9 - 0.524score
create-verification-skill
nahuelb
Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform.
SkillBFreshness: B★ 1Claude Code +9 - 0.522score
figure-it-out
nahuelb
Design an auditable playbook when no narrower one fits: a large migration, an ambitious multi-part change, or work a human reviews after stepping away.
SkillBFreshness: B★ 1Claude Code +9 - 0.521score
no-comments
nahuelb
Spawn Comment Sicko, fix accepted findings, and offer encodings for claimed constraints.
SkillBFreshness: B★ 1Claude Code +9 - 0.519score
blast-radius
nahuelb
Find what a change could break somewhere else before it ships, beyond the diff, and prove the one fact it's safe because of by running real code instead of…
SkillBFreshness: B★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 28, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/nahuelb/pstack-codex
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from nahuelb
- 0.565score
coordinator
nahuelb
Act as the coordinator of a long-running project.
SkillAFreshness: AClaude Code +9 - 0.564score
architect
nahuelb
Sketch types, signatures, and module structure before code, then stay in the loop while implementation fills in.
SkillAFreshness: A★ 1Claude Code +9 - 0.559score
arena
nahuelb
Spawn N parallel candidates at the same task, pick a base, graft the strongest parts of the losers into it.
SkillAFreshness: A★ 1Claude Code +9 - 0.549score
coordinator-setup
nahuelb
Set up Project Coordinator after installation.
SkillAFreshness: AClaude Code +9 - 0.549score
conversation-audit
nahuelb
Deeply audit a supplied Codex conversation for subagent and pstack-role token usage, model routing, timing, decisions, verification, and workflow performance.
SkillBFreshness: B★ 1Claude Code +9 - 0.524score
create-verification-skill
nahuelb
Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform.
SkillBFreshness: B★ 1Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get make-bot-ui running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
make-bot-ui skill. Agent Mart. https://agentmart.dev/skills/nahuelb-make-bot-ui (last updated 2026-10-24)