Run any Skill in Manus
with one click
with one click
Run any Skill in Manus with one click
Get Started$pwd:
$ git log --oneline --stat
stars:51
forks:9
updated:March 19, 2026 at 23:39
SKILL.md
| name | shift |
| description | Agent Tools and Float Actions Best Practices |
packages/frontend/src/agent/tools)ToolResult type from @/agent/types.ToolResult.ok({ message, ...data }) or ToolResult.err(message, detail?).ToolResult.ok() requires a message field plus additional value data (e.g., before, after).ToolResult.schema(valueSchema) to define output schemas.output passed to display functions is the unwrapped value from ToolResult.ok.display object alongside the tool.display object must satisfy ToolDisplay<TInput, TOutput> from @/agent/types.streaming: ({ input, output }) => MessageResultsuccess: ({ input, output }) => MessageResulterror: ({ input, output }) => stringMessageResult is an array of parts: [{ text: "Received ", muted: false }, { text: "200 OK", muted: true }].display export in packages/frontend/src/components/agent/ChatContent/ChatMessage/Assistant/Tool/messages.ts.packages/frontend/src/float/actions)ActionResult type from @/float/types.ActionResult.ok(message) or ActionResult.err(message, detail?).ActionResult.schema as the output schema (no arguments needed).const { sdk } = experimental_context as FloatToolContext.Method set to "POST" not Successfully updated the HTTP method of the current request to POST).isPresent utility from @/utils when checking for null or undefined values.isPresent(value) over value !== undefined && value !== null or similar checks..describe() for better AI understanding.