The agent's configuration surfaces: Settings › Agent pages (Instructions, Memory, Skills, Files, Sub-agents) and the full-page `AgentTabsPage` (resources, Snapshots, Agent integrations, Automations, MCP). Use when adding an agent resource group, surfacing context transparency, MCP servers, A2A agents, recurring jobs, or external-client connect flows in the UI.
67
84%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
AgentTabsPage (from @agent-native/core/client, source
packages/core/src/client/agent-page/) is the canonical full-page surface for
everything that can influence the agent. Design principles:
defaultTab is files. Resource tabs re-host ResourcesPanel views; the rest
re-host existing components.
| Tab | Contents |
|---|---|
files, instructions, agents, memory, skills, learnings, remote-agents | ResourcesPanel views (group "resources"). |
snapshots | Scope preview, token budget, provenance-grouped system sections (governance tiers), and the latest live-thread snapshot. Backed by context-preview-get / context-manifest-get (see context-xray). Old #context links land here. |
connections | "Agent integrations": MCP server management (both scopes, admin-gated org writes). |
jobs | Automations: personal and organization Scheduled/Event tasks with pause/resume/delete. The jobs hash is stable for compatibility (see automations and recurring-jobs). |
settings | The agent settings panel (model, keys, limits, voice). |
access | "MCP": copyable MCP URL and A2A agent-card URL, per-client connect steps from packages/core/src/shared/mcp-connect-content.ts (shared with /mcp/connect; edit the shared module, never fork copy), static-token fallback link. |
Settings › Agent › Instructions, Memory, Skills, and Files
(packages/core/src/client/settings/shell/pages/) render the same
ResourcesPanel with settingsGroups: Personal, {Org name}, and From Dispatch
groups (Memory swaps From Dispatch for Learnings). Add a group or an
add action there, not a second panel. Row read-only state comes from the scope:
organization rows for members and Dispatch rows for everyone; the server still
enforces it. Resource trees refetch on action change events, which is how an
agent's save-memory or resources write appears without a reload.
Settings › Agent › Sub-agents (pages/sub-agents.tsx) is the one place that
lists every agent the main agent can hand work to, each once:
remote-agents/<id>.json
manifests plus workspace apps only discovery knows, each "Reachable · {URL}"
from the batched /_agent-native/agents/probe.remote-agents/ manifest. The header's
Connect agent (owners and admins) opens the directory dialog: Foundry,
Gemini Enterprise, Anthropic Managed Agents, and any A2A agent by URL.agents/*.md profiles through ResourcesPanel
settingsGroups. Anyone can add a personal one.Build on useRemoteAgents() and the AgentAddForm / AgentEditForm exports
of AgentsSection.tsx, not a second fetch. ?connect=<a2a|anthropic-managed-agents|manual>
and the peer register-back f_agent* params still open the connect form, and
legacy ids (agent:agents, agent:directory, agent:resources:agents,
agent:resources:remote-agents, section a2a) redirect to this page. Hidden
and removed first-party ids (shared/first-party-agents.ts) stay unlisted, the
same rule discovery applies.
First-party templates don't mount AgentTabsPage. Their /agent route
redirects into Settings with buildLegacyAgentSettingsRoute(hash, search), so
/agent#files, #jobs, #connections, and #access land on the matching
Settings page, and they pass agentPageHref="/settings/agent" to
AgentSidebar (Settings › Agent › Model).
New agent-configuration UI belongs on a Settings page, not a new tab here.
For an app that wants the whole surface on one page:
AgentTabsPage from @agent-native/core/client/agent-chat on its
own route. CSR is fine; keep the app shell in root.tsx so navigation
does not remount it (client-side-routing skill).agentPageHref to AgentSidebar.extraTabs (same SettingsTabItem shape as
the settings page) or extraTabFactories; hide built-ins only with
hiddenTabs when the app genuinely lacks the underlying capability.The page currently passes personal scope (and canManageOrg) to tabs via
AgentPageTabProps; it does not expose a page-level Personal/Organization
toggle. A tab may render its own scoped sections where the underlying actions
support them. The Automations tab shows personal and organization sections for
both Scheduled and Event triggers. Organization event automations remain
creator-run: administrators can manage them, but cannot retarget the creator's
identity.
a941a2e
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.