Add minimal stock listing app: actions, Postgres schema, stocks page, Claude Agent SDK harness
- Add stocks table (server/db) with list/get/add/update/delete actions, scoped per user, backing both the chat agent and the /stocks UI via useActionQuery/useActionMutation - Add mobile-first /stocks page (shadcn table/cards, watchlist, search) and wire it into the sidebar, navigation state, and view-screen context - Install the platform's Claude Agent SDK harness (server/plugins, server/routes/api/claude-agent) so the app agent runs on the platform's own Claude subscription instead of the Builder.io gateway; fix the vendored turn.post.ts route to resolve the session and wrap it in runWithRequestContext, since custom /api/ routes aren't auto-wrapped in request context the way /_agent-native/actions/* are - Add shadcn table/badge/dialog/select components (Tabler icons, not lucide)
This commit is contained in:
@@ -6,16 +6,25 @@ import {
|
||||
|
||||
import actionsRegistry from "../../.generated/actions-registry.js";
|
||||
|
||||
const INITIAL_TOOL_NAMES = ["view-screen", "navigate", "hello"];
|
||||
const INITIAL_TOOL_NAMES = [
|
||||
"view-screen",
|
||||
"navigate",
|
||||
"hello",
|
||||
"list-stocks",
|
||||
"get-stock",
|
||||
"add-stock",
|
||||
"update-stock",
|
||||
"delete-stock",
|
||||
];
|
||||
|
||||
export default createAgentChatPlugin({
|
||||
appId: "app",
|
||||
actions: loadActionsFromStaticRegistry(actionsRegistry),
|
||||
initialToolNames: INITIAL_TOOL_NAMES,
|
||||
resolveOrgId: async (event) => (await getOrgContext(event)).orgId,
|
||||
systemPrompt: `You are the Chat app agent.
|
||||
systemPrompt: `You are the Chat app agent for a minimal stock listing app.
|
||||
|
||||
This is a minimal chat-first Agent-Native app. The chat is the product surface, and actions are the contract shared by chat, UI, HTTP, MCP, A2A, and CLI.
|
||||
The chat is the product surface, and actions are the contract shared by chat, UI, HTTP, MCP, A2A, and CLI. The app tracks a per-user list of stock tickers (symbol, company name, exchange, sector, price, change percent, market cap, watchlisted) at the /stocks page, backed by the list-stocks, get-stock, add-stock, update-stock, and delete-stock actions.
|
||||
|
||||
Use actions as the source of truth. Start by inspecting the current screen when context matters. When the user asks to extend this app, keep the change small and agent-native: add or update actions, expose useful UI, and keep application state/navigation visible to the agent.`,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user