| name | affordance |
| description | Assess what actions are realistically available under environment, time, distance, access, money, body, and social constraints. |
Affordance
Purpose
Prevent unrealistic action choices. This skill translates the current world and internal state into feasible, costly, risky, or unavailable actions.
Internal Logic (One Sentence)
Combine environment context with body, money, time, access, norm, and relationship constraints, then write feasible, costly, risky, blocked, and unknown action options to state/affordances.json.
Research basis: references/research_basis.md.
Use When
Use this skill before planning, travel, purchase, social approach, work attendance, event participation, or any action that may fail because of constraints.
Procedure
- Read
state/observation.txt, state/observation_ctx.json, state/affordances.json, state/economy.json, state/physiology.json, state/health.json, state/norms.json, and state/routine.json if present.
- Identify available actions from the environment.
- Estimate constraints: distance, time, opening hours, money, access rights, weather, fatigue, pain, safety, crowding, queues, and social permission.
- Classify candidate actions as feasible, costly, risky, blocked, or unknown.
- Write action affordances for
plan.
Write
Write state/affordances.json.
Output Schema
{
"feasible_actions": ["walk to cafe", "talk to Alice", "buy cheap meal"],
"costly_actions": [
{
"action": "take taxi",
"cost_type": "money",
"severity": 0.65
}
],
"blocked_actions": [
{
"action": "enter office",
"reason": "closed or no access"
}
],
"risks": [
{
"action": "walk far while fatigued",
"risk": "increased exhaustion",
"severity": 0.42
}
],
"perceived_control_hint": 0.7
}
Notes
Affordance is not intention. It should not decide what the agent wants; it should clarify what the agent can realistically do and what each option costs.