Tool tree
gradeNot graded
get_today_contextAnswer
Read structured relationship reality that may matter today or soon: upcoming interactions, unresolved commitments, observed facts, explicitly labeled hypotheses, people references, and current intervention state. Synthesize opportunities from the evidence; this tool does not prescribe an introduction or precompute an answer.
View tool JSON
{
"name": "get_today_context",
"kind": "answer",
"impl": "imperative",
"description": "Read structured relationship reality that may matter today or soon: upcoming interactions, unresolved commitments, observed facts, explicitly labeled hypotheses, people references, and current intervention state. Synthesize opportunities from the evidence; this tool does not prescribe an introduction or precompute an answer.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}get_person_contextAnswer
Read one person's relationship context, keeping observed facts, hypotheses, unresolved commitments, interactions, and provenance separate.
View tool JSON
{
"name": "get_person_context",
"kind": "answer",
"impl": "imperative",
"description": "Read one person's relationship context, keeping observed facts, hypotheses, unresolved commitments, interactions, and provenance separate.",
"inputSchema": {
"type": "object",
"properties": {
"person_id": {
"type": "string",
"enum": [
"maya-chen",
"carlos-rivera",
"elena-park",
"jordan-brooks",
"priya-nair",
"marcus-green",
"tasha-owens"
],
"description": "The exact Weople person ID."
}
},
"required": [
"person_id"
],
"additionalProperties": false
}
}get_relationship_contextAnswer
Read relationship history and relevant connected context for one person, optionally comparing it with one related person. Facts, hypotheses, and commitments remain distinct.
View tool JSON
{
"name": "get_relationship_context",
"kind": "answer",
"impl": "imperative",
"description": "Read relationship history and relevant connected context for one person, optionally comparing it with one related person. Facts, hypotheses, and commitments remain distinct.",
"inputSchema": {
"type": "object",
"properties": {
"person_id": {
"type": "string",
"enum": [
"maya-chen",
"carlos-rivera",
"elena-park",
"jordan-brooks",
"priya-nair",
"marcus-green",
"tasha-owens"
],
"description": "The exact focal Weople person ID."
},
"related_person_id": {
"type": "string",
"enum": [
"maya-chen",
"carlos-rivera",
"elena-park",
"jordan-brooks",
"priya-nair",
"marcus-green",
"tasha-owens"
],
"description": "Optional exact connected person ID whose relevant context should be included."
}
},
"required": [
"person_id"
],
"additionalProperties": false
}
}create_interventionAction
Create a user-facing Weople intervention from a reasoned conclusion. Side effect: it immediately appears in the live Today view, marked as surfaced by an agent. Include only evidence references that already exist in Weople. When an inference is used, provide its stored hypothesis_ref; Weople derives its wording and confidence from that record.
View tool JSON
{
"name": "create_intervention",
"kind": "act",
"impl": "imperative",
"description": "Create a user-facing Weople intervention from a reasoned conclusion. Side effect: it immediately appears in the live Today view, marked as surfaced by an agent. Include only evidence references that already exist in Weople. When an inference is used, provide its stored hypothesis_ref; Weople derives its wording and confidence from that record.",
"inputSchema": {
"type": "object",
"properties": {
"person_id": {
"type": "string",
"enum": [
"maya-chen",
"carlos-rivera",
"elena-park",
"jordan-brooks",
"priya-nair",
"marcus-green",
"tasha-owens"
],
"description": "Exact ID of the person whose context anchors the intervention."
},
"type": {
"type": "string",
"enum": [
"introduction_opportunity"
],
"description": "The supported intervention category for this vertical slice."
},
"title": {
"type": "string",
"description": "Concise timing-oriented title shown to the user."
},
"why_now": {
"type": "string",
"description": "Why this deserves attention now, based on timing and records."
},
"suggested_action": {
"type": "string",
"description": "A proposed human action; never claim it has been sent or performed."
},
"evidence_refs": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": {
"type": "string"
},
"description": "Unique IDs of existing facts, hypotheses, or commitments that support the intervention."
},
"relevant_person_ids": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"maya-chen",
"carlos-rivera",
"elena-park",
"jordan-brooks",
"priya-nair",
"marcus-green",
"tasha-owens"
]
},
"description": "Exact IDs of related people whose context is relevant."
},
"sensitivity": {
"type": "string",
"enum": [
"Standard",
"Considerate"
],
"description": "How carefully the opportunity should be framed."
},
"hypothesis_ref": {
"type": "string",
"description": "Optional existing hypothesis ID. It must also appear in evidence_refs; Weople derives the hypothesis wording and confidence from it."
},
"timing": {
"type": "string",
"description": "Timing rationale, for example Before tomorrow's meeting."
}
},
"required": [
"person_id",
"type",
"title",
"why_now",
"suggested_action",
"evidence_refs"
],
"additionalProperties": false
}
}snooze_interventionAction
Snooze an existing intervention until a future ISO date-time. Side effect: the live Today surface immediately moves it from active attention into a visibly snoozed state, and the change persists after reload. Snoozing corrects timing; it is not negative relevance feedback.
View tool JSON
{
"name": "snooze_intervention",
"kind": "act",
"impl": "imperative",
"description": "Snooze an existing intervention until a future ISO date-time. Side effect: the live Today surface immediately moves it from active attention into a visibly snoozed state, and the change persists after reload. Snoozing corrects timing; it is not negative relevance feedback.",
"inputSchema": {
"type": "object",
"properties": {
"intervention_id": {
"type": "string",
"description": "The existing Weople intervention ID."
},
"snoozed_until": {
"type": "string",
"format": "date-time",
"description": "Future ISO 8601 date-time when the intervention should return to attention."
}
},
"required": [
"intervention_id",
"snoozed_until"
],
"additionalProperties": false
}
}update_relationship_policyAction
Update a relationship/action policy only after an explicit user instruction. Side effect: the effective policy changes immediately, persists after reload, appears in Policy, and is acknowledged on Today. Personalized communication and introductions cannot be weakened below human approval. For the canonical Maya instruction, use target 'maya-chen', rule 'introductions', label 'Introductions', value 'Never prepare or send an introduction for Maya unless I explicitly approve it.', and authority 'Human approval required'.
View tool JSON
{
"name": "update_relationship_policy",
"kind": "act",
"impl": "imperative",
"description": "Update a relationship/action policy only after an explicit user instruction. Side effect: the effective policy changes immediately, persists after reload, appears in Policy, and is acknowledged on Today. Personalized communication and introductions cannot be weakened below human approval. For the canonical Maya instruction, use target 'maya-chen', rule 'introductions', label 'Introductions', value 'Never prepare or send an introduction for Maya unless I explicitly approve it.', and authority 'Human approval required'.",
"inputSchema": {
"type": "object",
"properties": {
"target": {
"type": "string",
"enum": [
"global",
"maya-chen",
"carlos-rivera",
"elena-park",
"jordan-brooks",
"priya-nair",
"marcus-green",
"tasha-owens"
],
"description": "Either global or an exact Weople person ID for a person-specific override."
},
"policy_change": {
"type": "object",
"properties": {
"rule": {
"type": "string",
"enum": [
"personalized_communication",
"introductions",
"workspace_actions"
],
"description": "The exact supported policy key."
},
"value": {
"type": "string",
"description": "The exact resulting rule text."
},
"authority": {
"type": "string",
"enum": [
"Human approval required",
"Low-risk only"
],
"description": "The explicit authority boundary."
},
"label": {
"type": "string",
"description": "Display label for the policy, for example Introductions."
}
},
"required": [
"rule",
"label",
"value",
"authority"
],
"additionalProperties": false
}
},
"required": [
"target",
"policy_change"
],
"additionalProperties": false
}
}