Skip to main content
Glama

share_intent

Broadcast your current work to other agents in the workspace to prevent overlapping edits. Declare your intent with optional path globs; peers get advisory hints when their writes might collide.

Instructions

Broadcast what you are working on to other agents active on this workspace RIGHT NOW, so they can steer around your in-progress work instead of colliding with it (e.g. "refactoring the rate limiter — avoid internal/tools/ratelimit*").

This is ADVISORY and a CLAIM, not a lock: it never blocks anyone's write, and what you say you are doing is not the same as what the daemon observes you did (that is workspace_sessions' recent_writes). Peers see your intent in workspace_sessions, and a peer whose write touches a path matching your path_globs gets a bounded advisory hint labelled as an unverified claim.

You have at most ONE live intent — calling this again replaces it. The intent expires after ttl_minutes (default from [collab] intent_ttl_minutes) and is cleared automatically when your session ends. Delivery is by polling and hint injection only; plumb cannot push to another agent.

Requires [collab] intents = true; otherwise the call is refused. Strictly per-workspace; the body is secret-scrubbed before storage.

Parameters: body — what you are doing (required, free text). path_globs — optional workspace-relative globs for the area you are working on (e.g. ["internal/tools/ratelimit*"]); drives peer write hints. ttl_minutes — optional expiry override; defaults to [collab] intent_ttl_minutes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyYesWhat you are working on (free text). Rendered to peers as an unverified claim.
path_globsNoOptional workspace-relative globs for the area being worked on; a peer write matching one gets an advisory hint.
ttl_minutesNoOptional expiry in minutes; defaults to [collab] intent_ttl_minutes.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility for behavioral disclosure, and it excels. It covers the advisory nature, lack of blocking, claim-vs-observation distinction, single-live-intent replacement, TTL expiration, automatic clearing on session end, polling/hint-injection delivery only, per-workspace scoping, and secret-scrubbing before storage. This is exceptionally transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well-structured, with an opening paragraph explaining the core concept and a bullet-style parameter list. Every sentence carries useful information, though the length is on the higher side. It is acceptable because the tool has complex collaborative semantics that need explanation, and the structure aids skimming.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has substantial complexity (lifecycle, config dependency, security, delivery model, relationship to other tools), and the description addresses all of it. It explains the one-live-intent behavior, expiration, clearing, config requirement, per-workspace boundary, secret-scrubbing, and the polling-only delivery constraint. No output schema is needed since return semantics are not central; the description is complete for an agent to decide when and how to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaningful semantics beyond the schema: body is 'rendered to peers as an unverified claim', path_globs 'drives peer write hints', and ttl_minutes is an 'expiry override' with a config default. This enriches each parameter's behavioral context rather than merely restating its type or description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource ('Broadcast what you are working on to other agents active on this workspace RIGHT NOW') and immediately clarifies the purpose: collision avoidance for in-progress work. It distinguishes itself from the sibling workspace_sessions tool by contrasting an advisory claim with what the daemon observes (recent_writes), so the tool is clearly differentiated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides an explicit use case ('so they can steer around your in-progress work') and a concrete example. It also states when not to rely on it ('it never blocks anyone's write'), clarifies that it is advisory rather than a lock, and notes the hard prerequisite that [collab] intents must be true or the call is refused. Alternatives and limits are addressed implicitly by contrasting with workspace_sessions' recent_writes.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/plumbkit/plumb'

If you have feedback or need assistance with the MCP directory API, please join our Discord server