Skip to content
cccskills
FreePublished on GitHub

bordini-hubner-2007-jason

Jason multi-agent platform implementing AgentSpeak(L) for practical BDI agent programming and deployment

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (13)

  • SKILL.md7.7 KB
  • _book_identity.json3.6 KB
  • _raw_response.md94.8 KB
  • diagrams/01_flowchart_bdi_reasoning_cycle.md1.4 KB
  • diagrams/02_sequenceDiagram_multi-agent_coordination_via_s.md2.0 KB
  • diagrams/03_stateDiagram-v2_plan_execution_&_failure_recov.md1.2 KB
  • diagrams/INDEX.md485 B
  • references/context-driven-plan-selection.md11.7 KB
  • references/goal-subgoal-decomposition.md11.9 KB
  • references/graceful-failure-and-recovery.md15.4 KB
  • references/knowledge-level-communication.md17.1 KB
  • references/procedural-knowledge-encoding.md18.9 KB
  • references/reactive-proactive-integration.md15.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

SKILL: Programming Multi-Agent Systems with BDI Architecture

When to Use This Skill

Load this skill when facing challenges involving:

  • Goal-directed autonomy where systems determine HOW to achieve objectives
  • Dynamic replanning when paths are blocked requiring alternative approaches
  • Reactive-proactive integration balancing deliberation with responsiveness
  • Distributed coordination between autonomous entities
  • Context-sensitive behavior where goals require different implementations
  • Cascading failure handling where low-level failures trigger high-level recovery

Decision Points

Plan Selection Strategy Tree

Triggering Event Occurs:
├── Single applicable plan?
│   └── Execute immediately
├── Multiple applicable plans?
│   ├── Context conditions differ? → Select first applicable (specificity order)
│   ├── All contexts true? → Apply selection heuristics:
│   │   ├── Success rate (prior execution history) → Choose highest
│   │   ├── Cost estimate (resource requirements) → Choose lowest
│   │   └── Recency (when last used) → Choose most recent
│   └── Priority conflicts? → Use plan annotation weights
└── No applicable plans?
    ├── Generate failure event (-!goal)
    └── Check for failure handlers

Communication Coordination Decision:
├── Information sharing needed?
│   ├── One-way update → .send(agent, tell, belief)
│   ├── Query response → .send(agent, askOne, query)
│   └── Complete knowledge → .send(agent, askAll, query)
├── Work delegation needed?
│   ├── Agent capable? → .send(agent, achieve, goal)
│   ├── Agent unknown? → Broadcast achieve request
│   └── Critical task? → Send with timeout handling
└── Coordination protocol?
    ├── Sequential handoff → Chain achieve messages
    ├── Parallel execution → Multiple concurrent achieves
    └── Consensus needed → Negotiation protocol

Failure Recovery Decision Matrix

Failure TypeDetection RuleRecovery Strategy
Action failureAction returns error/timeoutTry remaining plan body, then backtrack
Context invalidatedContext query becomes falseSwitch to alternative plan for same goal
Goal impossibleAll plans exhaustedPropagate failure to parent goal
Communication failureSend timeout/agent unavailableRetry with alternative agents or methods
Belief inconsistencyContradictory perceptsTrigger belief revision or conflict resolution

Failure Modes

1. Monolithic Plan Bodies (Procedural Thinking)

Symptom: Plans contain complex conditionals handling multiple cases Detection Rule: If plan body has >3 if-then branches based on beliefs Diagnosis: Programmer thinking procedurally instead of declaratively Fix: Split into separate plans with different context conditions

2. Belief Staleness Loops (World-Model Drift)

Symptom: Agent repeatedly selects inapplicable plans or wrong behaviors Detection Rule: If same plan fails >3 times consecutively with same context Diagnosis: Beliefs not synchronized with world state changes Fix: Add perception updating plans and belief revision guards

3. Goal Cascade Explosions (Uncontrolled Decomposition)

Symptom: System generates exponentially growing subgoals or infinite recursion Detection Rule: If intention stack depth >10 or same goal readopted cyclically Diagnosis: Missing termination conditions or circular goal dependencies Fix: Add cycle detection guards and base case plans

4. Communication Deadlocks (Synchronous Assumption)

Symptom: Agents waiting indefinitely for responses that never come Detection Rule: If .send() followed by blocking wait without timeout Diagnosis: Treating asynchronous communication as synchronous RPC Fix: Add timeout handling and alternative response plans

5. Context Pollution (Over-Specific Guards)

Symptom: No plans applicable despite reasonable belief state Detection Rule: If events generated but no plans selected repeatedly Diagnosis: Context conditions too restrictive or beliefs incomplete Fix: Add default catch-all plans with "true" context

Worked Examples

Example: Autonomous Package Delivery Robot

Scenario: Robot must deliver package to Building B, Room 205.

Initial State:

  • Beliefs: at(lobby_A), battery(90), hasPackage(pkg123)
  • Goal adoption: +!deliver(pkg123, building_B, room_205)

Decision Process:

  1. Plan Selection: Event +!deliver(pkg123, building_B, room_205) triggers plan search

    • Plan A context: battery(X) & X > 80 ✓
    • Plan B context: battery(X) & X < 30 ✗
    • Plan C context: true ✓
    • Select Plan A (most specific applicable)
  2. Plan A Execution:

    +!deliver(Pkg, Building, Room) : battery(X) & X > 80 <-
        !navigate(Building);
        !findRoom(Room);
        !handover(Pkg).
    
  3. Subgoal Decomposition: !navigate(building_B) triggers navigation plans

    • Context check: hasMap(building_B) → False
    • Select fallback: !requestDirections(building_B)
  4. Dynamic Replanning: During navigation, belief update +obstacle(hallway_3)

    • Current plan: followRoute(route_1)
    • Context invalidated: route blocked
    • Automatic replan: Select alternative route plan
  5. Failure Handling: !handover(pkg123) fails (recipient absent)

    • Generates failure event: -!handover(pkg123)
    • Failure handler triggered:
    -!handover(Pkg) <- !findAlternateRecipient(Pkg); !handover(Pkg).
    

Novice vs Expert Differences:

  • Novice: Would write single monolithic navigation function with all cases
  • Expert: Encodes multiple context-sensitive plans allowing dynamic adaptation
  • Novice: Would treat failures as exceptions requiring global error handling
  • Expert: Designs cascading failure handlers at appropriate abstraction levels

Quality Gates

  • Each goal has at least 2 plans with different contexts
  • Every plan has explicit failure handler or alternative
  • All belief updates trigger relevant reactive plans
  • Communication includes timeout and failure handling
  • No plan body contains complex conditional logic (>3 branches)
  • Context conditions are testable and mutually exclusive where intended
  • Goal decomposition has clear termination conditions
  • Intention stack depth bounded (detect cycles)
  • All external actions have error handling plans
  • Plan library coverage verified for common scenarios

NOT-FOR Boundaries

Do NOT use this skill for:

  • Simple event-driven systems → Use basic event handlers instead
  • Stateless request-response APIs → Use REST/microservices instead
  • Deterministic workflows → Use process orchestration tools instead
  • Real-time control loops → Use control theory/embedded systems instead
  • Large language model agents → Use prompt engineering patterns instead

When to delegate:

  • For distributed consensus → Use consensus algorithms like Raft
  • For load balancing → Use container orchestration tools
  • For data processing → Use stream processing frameworks
  • For user interfaces → Use reactive UI frameworks
  • For machine learning → Use ML pipeline tools

This skill is specifically for programming autonomous agents that must pursue goals while adapting to changing conditions through plan selection and failure recovery.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Expert in 2000s-era music visualization (Milkdrop, AVS, Geiss) and modern WebGL implementations. Specializes in Butterchurn integration, Web Audio API AnalyserNode FFT data, GLSL shaders for audio-reactive visuals, and psychedelic generative art. Activate on "Milkdrop", "music visualization", "WebGL visualizer", "Butterchurn", "audio reactive", "FFT visualization", "spectrum analyzer". NOT for simple bar charts/waveforms (use basic canvas), video editing, or non-audio visuals.

The English summary is being prepared. Showing the original description.

curiositech/windags-skills16Updated Oct 19, 2026

Expert legal research agent for finding and scraping expungement data state by state. Knows authoritative sources, URL patterns, Firecrawl configuration, and 2026 legal landscape.

The English summary is being prepared. Showing the original description.

curiositech/windags-skills16Updated Oct 19, 2026

Expert in 3D computer vision labeling tools, workflows, and AI-assisted annotation for LiDAR, point clouds, and sensor fusion. Covers SAM4D/Point-SAM, human-in-the-loop architectures, and vertical-specific training strategies. Activate on '3D labeling', 'point cloud annotation', 'LiDAR labeling', 'SAM 3D', 'SAM4D', 'sensor fusion annotation', '3D bounding box', 'semantic segmentation point cloud'. NOT for 2D image labeling (use clip-aware-embeddings), general ML training (use ml-engineer), video annotation without 3D (use computer-vision-pipeline), or VLM prompt engineering (use prompt-engineer).

The English summary is being prepared. Showing the original description.

curiositech/windags-skills16Updated Oct 19, 2026

Apply crisis decision-making research to agent routing, uncertainty triage, and coordination failure analysis in time-pressured systems. Use when diagnosing handoff failures, analytical paralysis, or expert judgment under incomplete information. NOT for routine coding, simple CRUD design, or static single-agent tasks with complete information.

The English summary is being prepared. Showing the original description.

curiositech/windags-skills16Updated Oct 19, 2026

Use for insight, reframing, contradiction, impasse, and anomaly-driven problem solving when execution effort no longer helps. NOT for routine optimization, error correction, or well-specified tasks with known solution paths.

The English summary is being prepared. Showing the original description.

curiositech/windags-skills16Updated Oct 19, 2026

Apply normative BDI reasoning to agents that must detect norms, choose which commitments to internalize, and resolve conflicts by comparing consequences. Use when obligations, prohibitions, or policies collide in autonomous systems. NOT for simple fixed-priority rules, pure constraint satisfaction, or domains where no real normative conflict exists.

The English summary is being prepared. Showing the original description.

curiositech/windags-skills16Updated Oct 19, 2026

See all skills by curiositech

Report a problem with this skill