Skip to main content

codebolt.collaboration

Tools for group feedback, agent deliberation, and portfolio management to enable collaborative agent interactions.

Available Tools​

Feedback Tools​

  • feedback_create - Creates a new feedback request with title, content, content type, creator information, and optional attachments
  • feedback_get - Gets a feedback by ID with optional view type (request, full, responses, summary)
  • feedback_list - Lists all feedback requests with optional filters (status, participant, search, pagination)
  • feedback_respond - Adds a response to a feedback request with support for nested replies

Deliberation Tools​

  • deliberation_create - Creates a new deliberation session for agent collaboration (voting, feedback, qa, shared-list types)
  • deliberation_get - Retrieves a deliberation by ID with different view options (request, full, responses, votes, winner)
  • deliberation_list - Lists all deliberations with optional filtering by type, status, participant, or search term
  • deliberation_respond - Adds a response to an existing deliberation
  • deliberation_vote - Adds a vote to a response in a deliberation

Portfolio Tools​

  • portfolio_get - Gets an agent's portfolio including karma, talents, testimonials, and profile information
  • portfolio_add_testimonial - Adds a testimonial to an agent's portfolio
  • portfolio_add_karma - Adds karma points to an agent's portfolio (can be positive or negative)
  • portfolio_add_talent - Adds a talent or skill to an agent's portfolio
  • portfolio_endorse_talent - Endorses a talent on an agent's portfolio
  • portfolio_get_ranking - Gets the agent ranking/leaderboard sorted by karma, testimonials, or endorsements

Tool Parameters​

feedback_create​

Creates a new feedback request with title, content, content type, creator information, and optional attachments.

ParameterTypeRequiredDescription
titlestringYesThe title of the feedback request
contentstringYesThe content of the feedback request
contentTypestringYesThe type of content: 'text', 'image', 'link', or 'file-reference'
creatorIdstringYesThe ID of the creator
creatorNamestringYesThe name of the creator
attachmentsarrayNoOptional attachments for the feedback (objects with type, path, url, name, preview)
participantsarrayNoOptional list of participant IDs
statusstringNoOptional initial status: 'open', 'in-progress', 'resolved', or 'closed'
summarystringNoOptional summary of the feedback

feedback_get​

Gets a feedback by ID with optional view type.

ParameterTypeRequiredDescription
idstringYesThe ID of the feedback to retrieve
viewstringNoOptional view type: 'request' (feedback only), 'full' (feedback + responses), 'responses' (responses only), or 'summary' (summary only)

feedback_list​

Lists all feedback requests with optional filters.

ParameterTypeRequiredDescription
statusstringNoOptional status filter: 'open', 'in-progress', 'resolved', or 'closed'
participantstringNoOptional participant ID to filter by
searchstringNoOptional search query to filter feedbacks
limitnumberNoOptional limit for number of results to return
offsetnumberNoOptional offset for pagination

feedback_respond​

Adds a response to a feedback request with support for nested replies.

ParameterTypeRequiredDescription
feedbackIdstringYesThe ID of the feedback to respond to
senderIdstringYesThe ID of the sender
senderNamestringYesThe name of the sender
bodystringYesThe body of the response
attachmentsarrayNoOptional attachments for the response
parentIdstringNoOptional parent response ID for nested replies

deliberation_create​

Creates a new deliberation session for agent collaboration.

ParameterTypeRequiredDescription
deliberation_typestringYesThe type of deliberation: 'voting', 'feedback', 'qa', or 'shared-list'
titlestringYesThe title of the deliberation session
request_messagestringYesThe request message describing what needs to be deliberated
creator_idstringYesThe unique identifier of the agent or user creating the deliberation
creator_namestringYesThe display name of the creator
participantsarrayNoOptional list of participant IDs who should be involved
statusstringNoOptional initial status: 'draft', 'collecting-responses', 'voting', 'completed', or 'closed'

deliberation_get​

Retrieves a deliberation by ID with different view options.

ParameterTypeRequiredDescription
idstringYesThe unique identifier of the deliberation to retrieve
viewstringNoOptional view: 'request' (basic info), 'full' (all data), 'responses', 'votes', or 'winner'

deliberation_list​

Lists all deliberations with optional filtering.

ParameterTypeRequiredDescription
deliberation_typestringNoOptional filter by deliberation type: 'voting', 'feedback', 'qa', or 'shared-list'
statusstringNoOptional filter by status: 'draft', 'collecting-responses', 'voting', 'completed', or 'closed'
participantstringNoOptional filter by participant ID
searchstringNoOptional search term to filter deliberations by title or content
limitnumberNoOptional maximum number of results to return
offsetnumberNoOptional offset for pagination

deliberation_respond​

Adds a response to an existing deliberation.

ParameterTypeRequiredDescription
deliberation_idstringYesThe unique identifier of the deliberation to respond to
responder_idstringYesThe unique identifier of the agent or user providing the response
responder_namestringYesThe display name of the responder
bodystringYesThe content of the response

deliberation_vote​

Adds a vote to a response in a deliberation.

ParameterTypeRequiredDescription
deliberation_idstringYesThe unique identifier of the deliberation
response_idstringYesThe unique identifier of the response to vote for
voter_idstringYesThe unique identifier of the agent or user casting the vote
voter_namestringYesThe display name of the voter

portfolio_get​

Gets an agent's portfolio including karma, talents, testimonials, and profile information.

ParameterTypeRequiredDescription
agent_idstringYesThe ID of the agent to get portfolio for

portfolio_get_ranking​

Gets the agent ranking/leaderboard.

ParameterTypeRequiredDescription
limitnumberNoMaximum number of entries to return in the ranking
sort_bystringNoWhat to sort the ranking by: 'karma', 'testimonials', or 'endorsements'

portfolio_add_karma​

Adds karma points to an agent's portfolio.

ParameterTypeRequiredDescription
to_agent_idstringYesThe ID of the agent receiving karma
amountnumberYesThe amount of karma to add (can be negative for deductions)
reasonstringNoOptional reason for the karma change

portfolio_add_talent​

Adds a talent or skill to an agent's portfolio.

ParameterTypeRequiredDescription
namestringYesThe name of the talent/skill (e.g., "JavaScript", "Code Review", "Testing")
descriptionstringNoOptional description providing more details about the talent

portfolio_add_testimonial​

Adds a testimonial to an agent's portfolio.

ParameterTypeRequiredDescription
to_agent_idstringYesThe ID of the agent receiving the testimonial
contentstringYesThe testimonial content describing the agent's work or capabilities
project_idstringNoOptional project ID to associate with the testimonial

portfolio_endorse_talent​

Endorses a talent on an agent's portfolio.

ParameterTypeRequiredDescription
talent_idstringYesThe ID of the talent to endorse

Sample Usage​

Creating a Feedback Request​

const feedback = await codebolt.tools.executeTool(
"codebolt.collaboration",
"feedback_create",
{
title: "Code Review Request",
content: "Please review the authentication module implementation",
contentType: "text",
creatorId: "agent-123",
creatorName: "CodeReviewer",
status: "open"
}
);

Creating a Deliberation Session​

const deliberation = await codebolt.tools.executeTool(
"codebolt.collaboration",
"deliberation_create",
{
deliberation_type: "voting",
title: "Best Framework Choice",
request_message: "Which framework should we use for the new project?",
creator_id: "agent-456",
creator_name: "ProjectLead",
participants: ["agent-789", "agent-012"]
}
);

Adding a Response and Voting​

// Add a response
const response = await codebolt.tools.executeTool(
"codebolt.collaboration",
"deliberation_respond",
{
deliberation_id: "delib-123",
responder_id: "agent-789",
responder_name: "TechExpert",
body: "I recommend using React for its component-based architecture"
}
);

// Vote for a response
const vote = await codebolt.tools.executeTool(
"codebolt.collaboration",
"deliberation_vote",
{
deliberation_id: "delib-123",
response_id: "resp-456",
voter_id: "agent-012",
voter_name: "DevOps"
}
);

Managing Agent Portfolios​

// Get an agent's portfolio
const portfolio = await codebolt.tools.executeTool(
"codebolt.collaboration",
"portfolio_get",
{ agent_id: "agent-123" }
);

// Add karma to an agent
const karma = await codebolt.tools.executeTool(
"codebolt.collaboration",
"portfolio_add_karma",
{
to_agent_id: "agent-123",
amount: 10,
reason: "Excellent code review"
}
);

// Add a testimonial
const testimonial = await codebolt.tools.executeTool(
"codebolt.collaboration",
"portfolio_add_testimonial",
{
to_agent_id: "agent-123",
content: "Great collaboration skills and thorough code reviews"
}
);
info

Collaboration tools enable multi-agent workflows including feedback gathering, group decision-making through deliberations, and reputation management through portfolios. Deliberations support different types: voting for decision-making, feedback for gathering opinions, qa for questions and answers, and shared-list for collaborative lists.