Skip to content

Commit 32c86b8

Browse files
authored
Merge pull request #1057 from objectstack-ai/copilot/ai-agent
2 parents 43ee0d0 + bbdcad9 commit 32c86b8

File tree

13 files changed

+889
-47
lines changed

13 files changed

+889
-47
lines changed

CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7171
absent, fixing the CI `@objectstack/client#test` failure.
7272

7373
### Added
74+
- **Metadata Assistant Agent (`service-ai`)** — New `metadata_assistant` agent definition that
75+
binds all 6 metadata management tools (`create_object`, `add_field`, `modify_field`,
76+
`delete_field`, `list_metadata_objects`, `describe_metadata_object`). Includes a tailored
77+
system prompt that guides the AI to use snake_case naming, verify existing schemas before
78+
modifications, and warn about destructive operations. Configured with `react` planning
79+
strategy (10 iterations, replan enabled) for multi-step schema design conversations.
80+
- **Tool Confirmation Flags** — Added `requiresConfirmation: true` to `create_object` and
81+
`delete_field` tool definitions. These destructive/creation operations now signal to the
82+
frontend that user approval is needed before execution.
83+
- **Frontend Tool Call Display (`AiChatPanel`)** — Enhanced the AI Chat Panel to render tool
84+
invocation parts from the Vercel AI SDK v6 stream protocol. Displays tool call status with
85+
visual indicators:
86+
- **Calling**: Spinner animation with tool name and argument summary
87+
- **Confirmation**: Yellow-bordered card with Approve/Deny buttons for `requiresConfirmation` tools
88+
- **Success**: Green success indicator with result preview
89+
- **Error**: Red error indicator with error message
90+
- **Denied**: Muted indicator for user-denied operations
91+
- **Operation Confirmation Mechanism** — Integrated the Vercel AI SDK `addToolApprovalResponse`
92+
hook to support approval/denial workflows for tools marked with `requiresConfirmation`.
93+
When the server sends an `approval-requested` state, the chat panel shows Approve and Deny
94+
buttons. User decisions are sent back to the server to continue or abort the tool execution.
7495
- **Metadata Management Tools (`service-ai`)** — Added 6 built-in AI tools for metadata
7596
CRUD operations, each defined as a first-class `Tool` metadata file using `defineTool()`
7697
from `@objectstack/spec/ai`:

0 commit comments

Comments
 (0)