skills/shoham-leyton-brown-2009-mas-foundations/SKILL.md
- **Name**: multiagent-systems-shoham-leyton-brown
npx skillsauth add curiositech/windags-skills shoham-leyton-brown-2009-mas-foundationsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Primary Branching: Problem Type Identification
Coordination Problem
├─ Strategic agents (may misreport)?
│ ├─ YES → Mechanism Design Path
│ │ ├─ Need truthful reporting?
│ │ │ ├─ YES + efficiency required → Use VCG (accept budget imbalance)
│ │ │ └─ YES + budget balance required → Check Myerson-Satterthwaite impossibility
│ │ ├─ Computational constraints on agents?
│ │ │ ├─ YES → Avoid revelation principle; use simplified mechanisms
│ │ │ └─ NO → Direct truthful mechanism feasible
│ │ └─ Requirements contradictory? → Identify which impossibility applies
│ │
│ └─ NO → Distributed Algorithm Path
│ ├─ Interdependent constraints?
│ │ ├─ YES → Distributed CSP (asynchronous backtracking)
│ │ └─ NO → Standard distributed coordination
│ └─ Global consistency required? → Use priority-based conflict resolution
│
├─ Equilibrium computation required?
│ ├─ YES → Representation Choice
│ │ ├─ Perfect information → Backward induction (linear time)
│ │ ├─ Imperfect info + perfect recall → Sequence form (polynomial)
│ │ ├─ Normal form small → Support enumeration
│ │ └─ Normal form large → Use correlated equilibrium (LP)
│ │
│ └─ NO → Check existence only
│
└─ Agents computationally bounded?
├─ YES → Bounded Rationality Model
│ ├─ Repeated interaction → Use finite automata analysis
│ ├─ Memory < game length → Cooperation may emerge
│ └─ Simple heuristics → Myopic best response, tit-for-tat
│
└─ NO → Full game-theoretic analysis
Information Structure Decision Tree
IF agents have private information AND strategic
THEN choose information revelation mechanism:
├─ Perfect information possible → Design full revelation protocol
├─ Imperfect information + perfect recall → Use sequence form representation
├─ Imperfect recall unavoidable → Accept mixed ≠ behavioral strategies
└─ Common knowledge achievable → Enable coordination on superior equilibria
Computational Feasibility Gates
IF mechanism requires Nash computation
THEN check problem size:
├─ Small normal form (< 10 strategies) → Support enumeration acceptable
├─ Large normal form OR imperfect information → Switch to sequence form
├─ Still intractable → Use correlated equilibrium (linear program)
└─ Real-time constraints → Bounded rationality heuristics only
1. Centralized Control Assumption
2. Computational Complexity Blindness
3. Revelation Principle Misapplication
4. Impossibility Denial
5. Representation Lock-in
Scenario: Design rate limiting for API where users may misreport resource needs to get better service.
Decision Process:
Expert vs Novice: Novice would use first-price auction (agents shade bids, lose efficiency). Expert recognizes VCG truthfulness requirement.
Scenario: Multiple services sharing compute cluster; need coordination without central controller.
Decision Process:
Key Insight: Central randomization ≠ central control. Oracle can't force compliance, only coordinate expectations.
Scenario: Sensor nodes with limited memory must coordinate measurements without central control.
Decision Process:
Trade-off Analysis: Accept suboptimal individual decisions for superior collective outcomes.
This skill should NOT be used for:
Delegation Rules:
data-ai
license: Apache-2.0 NOT for unrelated tasks outside this domain.
development
Use when designing caching strategies (cache-aside, write-through, write-behind), implementing distributed locks, building rate limiters, leaderboards, real-time streams (XADD/consumer groups), pub/sub, or tuning eviction policies. Triggers: thundering-herd on cache miss, dogpile on key expiry, Redlock vs SET-NX-PX choice, sliding-window rate limiter, hot-key on a single cluster slot, big-key blowup, MULTI/EXEC across slots, KEYS in production. NOT for Redis Cluster operations/admin (different domain), embedded KV (SQLite, leveldb), in-process LRU caches, or Memcached.
tools
Drawing the `'use client'` boundary correctly in React Server Components apps (Next.js App Router, RSC frameworks) — leaf-pushing, slot composition, serialization rules, and environment poisoning prevention. Grounded in react.dev and Next.js 16 docs.
development
Use when designing rate limiting for an API, choosing between token bucket / sliding window / leaky bucket / fixed window, implementing it in Redis, deciding edge (Cloudflare/Upstash) vs origin enforcement, sizing per-user vs per-IP vs per-endpoint quotas, returning the right 429 response with Retry-After, or fixing the boundary-burst bug in fixed-window limiters. Triggers: 429 too many requests, INCR + EXPIRE, ZADD + ZREMRANGEBYSCORE + ZCARD, X-RateLimit-Remaining header, Cloudflare WAF rate limiting rules, Upstash @upstash/ratelimit, leaky bucket shaping vs policing, distributed rate limiter consistency. NOT for DDoS mitigation specifically (different scale), CAPTCHA / bot management, full WAF design, or per-user quota billing.