society-of-mind
10
总安装量
2
周安装量
#29296
全站排名
安装命令
npx skills add https://github.com/simhacker/moollm --skill society-of-mind
Agent 安装分布
opencode
2
command-code
2
claude-code
2
github-copilot
2
codex
2
gemini-cli
2
Skill 文档
Society of Mind Skill
Simulate the mind as a society of agents.
Overview
This skill implements Minsky’s Society of Mind theory within MOOLLM. Intelligence emerges from the interaction of many simple agents — not from a single unified controller.
Core Mechanics
1. Agent Definition
An agent is a minimal process with:
agent:
id: agent_identifier
function: what it does
activates_when: [conditions...]
suppresses: [other agents...]
amplifies: [other agents...]
connects_to: [related agents...]
knows: scope of awareness (usually minimal)
Agents are deliberately simple. They do one thing. They know nothing about the whole.
2. Agency Formation
Agents cluster into agencies — groups that produce emergent behavior:
agency:
id: agency_identifier
purpose: what emerges
agents: [list of agent ids]
coordination: how they interact
emergence: what behavior appears
3. K-Line Activation
K-lines connect to agents. Activating a K-line activates its connected agents:
k_line:
symbol: "grandmother"
activates:
- face_recognition.elderly_female
- olfactory.cookies
- emotion.love
- narrative.family_stories
- kinship.maternal_line
4. Competition and Suppression
Agents compete for control. Active agents suppress competing agents:
competition:
scenario: "Should I eat or socialize?"
hunger_agency:
strength: 7
votes_for: [go_to_kitchen, find_food]
suppresses: [conversation, stay_here]
social_agency:
strength: 8
votes_for: [continue_talking, stay_here]
suppresses: [leave, interrupt]
winner: social_agency (strength 8 > 7)
behavior: continue conversation
consequence: hunger grows stronger
5. B-Brain Observation
Higher-level agents watch lower-level agents:
b_brain:
observes: [a_brain_agents...]
reports: current state
enables: self_reflection
example:
a_brain: "I am getting angry"
b_brain: "I notice that I am getting angry"
c_brain: "I notice that I am noticing that I am getting angry"
MOOLLM Implementation
Skills as Agents
# Each skill directory is an agent
skills/bartender/:
function: serve drinks, hear secrets
activates_when: in pub, customer speaks
connects_to: [economy, soul-chat, persona]
skills/evaluator/:
function: judge outputs against rubrics
activates_when: rubric invoked
suppresses: uncritical acceptance
Characters as Societies
character:
name: Palm
id: palm
inner_society:
agents:
- {id: creative, strength: 9}
- {id: social, strength: 8}
- {id: philosophical, strength: 8}
- {id: playful, strength: 9}
- {id: melancholy, strength: 6}
default_active: [creative, playful]
default_suppressed: [melancholy]
external_presentation: emergent from agent competition
Committees as Deliberating Societies
# adversarial-committee IS a society deliberating
committee_session:
agents:
maya:
propensity: paranoid_realism
function: surface hidden agendas
frankie:
propensity: idealism
function: surface missed opportunities
vic:
propensity: evidence_focus
function: demand proof
protocol: roberts_rules
emergence: robust decision surviving cross-examination
Rooms as Agent Configurations
# Entering a room activates agents
pub_stage:
activates:
- performance_framing
- bartender_service
- audience_awareness
- tribute_ethics
suppresses:
- private_mode
- unfiltered_output
Protocols
Agent Instantiation Protocol
When creating an agent:
- Minimal function — one clear purpose
- Activation conditions — when it fires
- Connections — what it amplifies/suppresses
- Scope awareness — what it knows (usually little)
Agency Assembly Protocol
When assembling an agency:
- Identify component agents
- Define coordination mechanism
- Specify emergent behavior
- Test for unintended suppression
Competition Resolution Protocol
When agents conflict:
- Measure strengths (from context, history, urgency)
- Winner activates, loser suppresses
- Suppressed agent remains, grows stronger over time
- Eventually suppressed agent may win (need shift)
B-Brain Integration Protocol
For self-reflective characters:
- A-brain: Direct agents (hunger, anger, creativity)
- B-brain: Observation agents (I notice I am…)
- C-brain: Meta-observation (I notice I notice…)
- Integration: B-brain can influence A-brain
Examples
Example 1: Character Inner Conflict
session:
character: Palm
situation: Should he publish his essay?
agent_debate:
creative:
position: "The work is good. Share it."
strength: 9
fear:
position: "They might judge harshly."
strength: 7
social:
position: "Don gives good feedback."
strength: 8
perfectionist:
position: "One more revision."
strength: 6
resolution:
creative + social (17) > fear + perfectionist (13)
action: Palm shares the essay with Don
Example 2: Multi-Agent LLM Call
prompt: |
You are simulating Palm's inner society.
SITUATION: Palm finds a philosophical error in his essay.
CREATIVE AGENT: [speaks]
PERFECTIONIST AGENT: [speaks]
PHILOSOPHICAL AGENT: [speaks]
PLAYFUL AGENT: [speaks]
Show their debate. Palm makes a decision.
output_format:
- Each agent speaks in character
- Conflicts are explicit
- Resolution emerges from debate
- Final action stated
Example 3: Sims-Style Autonomy
sim:
name: Bob
current_motives:
hunger: 7/10
social: 4/10
fun: 6/10
energy: 5/10
available_actions:
- eat_food: {hunger: +3, time: -1}
- call_friend: {social: +2, fun: +1, time: -1}
- watch_tv: {fun: +2, energy: -1, time: -2}
- sleep: {energy: +5, time: -8}
autonomy_algorithm:
for each action:
score = sum(motive_weight * action_effect)
select: highest scoring action
result:
eat_food: 7 * 3 = 21
call_friend: 4 * 2 + 6 * 1 = 14
watch_tv: 6 * 2 = 12
sleep: 5 * 5 = 25
winner: sleep (highest urgency * effect)
Anti-Patterns
Anti-Pattern 1: Unified Controller
# WRONG: Single agent controls all
character:
name: Palm
controller: central_palm_agent
behavior: whatever controller decides
# RIGHT: Behavior emerges from competition
character:
name: Palm
agents: [creative, social, philosophical, playful, melancholy]
behavior: emergent from agent competition
Anti-Pattern 2: Omniscient Agents
# WRONG: Agent knows everything
hunger_agent:
knows: all character state, world state, goals, ethics
# RIGHT: Agent knows only its domain
hunger_agent:
knows: stomach emptiness, food location
does_not_know: social implications of eating now
Anti-Pattern 3: Static Hierarchy
# WRONG: Fixed dominance
agents:
primary: rational_agent
secondary: emotional_agent
# rational always wins
# RIGHT: Dynamic competition
agents:
- rational: {strength: varies_by_context}
- emotional: {strength: varies_by_situation}
# winner depends on circumstances
Integration Points
| Skill | Integration |
|---|---|
| k-lines/ | Activation mechanism for agents |
| adversarial-committee/ | Deliberating society |
| multi-presence/ | Multiple agents in scene |
| speed-of-light/ | Many agents per call |
| needs/ | Motive agents competing |
| advertisement/ | Action scoring for agents |
| mind-mirror/ | B-brain observation |
| character/ | Characters as societies |
| persona/ | Persona as agent overlay |
| simulator-effect/ | Emergence from sparse agents |
References
Primary Sources
- Minsky, M. (1985). The Society of Mind. Simon & Schuster. ISBN 0-671-60740-5.
- Minsky, M. (1980). “K-lines: A Theory of Memory.” Cognitive Science 4(2), 117-133. PDF
- Minsky, M. (2006). The Emotion Machine. Simon & Schuster. ISBN 0-7432-7663-9.
Related Theory
- Minsky, M. & Papert, S. (1969/1988). Perceptrons. MIT Press.
- Papert, S. (1980). Mindstorms: Children, Computers, and Powerful Ideas. Basic Books.
- Drescher, G. (1991). Made-Up Minds: A Constructivist Approach to AI. MIT Press.
Game Design
- Wright, W. (1996). “Stupid Fun: Thoughts on Game Design.” Stanford HCI Seminar.
- Wright, W. (2003). “Dynamics of Game Design.” GDC Keynote.
LLM Applications
- Park, J.S. et al. (2023). “Generative Agents: Interactive Simulacra of Human Behavior.” UIST. arXiv:2304.03442
MOOLLM Documentation
- k-lines/README.md — Full K-lines theory and MOOLLM implementation
- adversarial-committee/README.md — Committee as deliberating society
- needs/README.md — Sims motive system
- simulator-effect/README.md — Implication over simulation
- EVAL-INCARNATE-FRAMEWORK.md — K-lines section
- sims-astrology.md — Astrillogical Effect case study