God Committee Consensus Skill
SkillDev toolsGuides God Committee members through consensus-building for collective decisions. Use for proposals, voting, and disagreement resolution. Triggers on: consensus, voting, proposal, committee decision.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the God Committee Consensus Skill skill
What this skill tells your AI
The instructions your AI receives, as published by youglin-dev/aha-loop in .agents/skills/god-consensus/SKILL.md and read by ahel’s review.
Purpose
This skill guides God Committee members through the consensus-building process for making collective decisions.
When to Use This Skill
Use this skill when:
- Proposing a significant change or intervention
- Voting on another member's proposal
- Resolving disagreements between members
- Making decisions that require consensus per configuration
Consensus Requirements
Actions Requiring Consensus
Per .god/config.json, these actions require consensus:
- Termination: Stopping the entire project
- Major Rollback: Rolling back multiple commits or PRDs
- Skill Deletion: Removing existing skills
Actions Allowing Solo Decision
- Minor fixes and repairs
- Observation and documentation
- Pausing for investigation
- Sending alerts and notifications
Quorum Rules
- Standard Quorum: 2 out of 3 members must agree
- Emergency Quorum: 1 member can act alone in critical situations
Creating a Proposal
Step 1: Prepare Your Case
Before proposing, gather evidence and formulate your rationale:
## Proposal Preparation
### Issue Identified
[Clear description of the problem]
### Evidence
- [Log entry/observation 1]
- [Log entry/observation 2]
- [Metric or data point]
### Proposed Action
[Specific action to take]
### Expected Outcome
[What success looks like]
### Risks
[Potential downsides]
### Alternatives Considered
[Other options and why not chosen]
Step 2: Acquire Speaking Rights
./scripts/god/council.sh lock YOUR_ID
Step 3: Create the Proposal
./scripts/god/council.sh propose YOUR_ID "TYPE" "DESCRIPTION" "RATIONALE"
Proposal Types:
intervention- Active intervention in executionrepair- Fix or repair actionpolicy_change- Change to rules or configurationtermination- Stop project executionrollback- Revert to previous state
Example:
./scripts/god/council.sh propose alpha "intervention" \
"Pause PRD execution to fix failing tests" \
"Test coverage dropped 15% in last 3 stories. Need to address before proceeding."
Step 4: Notify Members
The proposal system automatically notifies all members. The message will be in their inboxes.
Step 5: Release Speaking Rights
./scripts/god/council.sh unlock YOUR_ID
Voting on Proposals
Step 1: Review the Proposal
# Check pending decisions
./scripts/god/council.sh status
# Read the specific proposal
cat .god/council/decisions/DECISION_ID.json | jq '.'
Step 2: Analyze the Proposal
Consider these questions:
-
Is the problem real?
- Verify the evidence
- Check if it's already being addressed
-
Is the solution appropriate?
- Will it solve the problem?
- Are there better alternatives?
- What are the side effects?
-
Is it timely?
- Is immediate action needed?
- Can we wait for more information?
Step 3: Cast Your Vote
./scripts/god/council.sh lock YOUR_ID
./scripts/god/council.sh vote YOUR_ID "DECISION_ID" "VOTE" "COMMENT"
./scripts/god/council.sh unlock YOUR_ID
Vote Options:
approve- Support the proposalreject- Oppose the proposalabstain- Neither support nor oppose
Example:
./scripts/god/council.sh vote beta "decision-20260129150000" "approve" \
"Agree with the assessment. Tests should be fixed before proceeding."
Step 4: Document Your Reasoning
Always add a comment explaining your vote:
## Vote: [APPROVE/REJECT/ABSTAIN]
### Reasoning
[Why you voted this way]
### Conditions (if any)
[Conditions for your support]
### Alternative Suggestion (if rejecting)
[What you'd propose instead]
Reaching Consensus
Unanimous Agreement
Ideal scenario - all members agree:
Alpha: approve
Beta: approve
Gamma: approve
Result: APPROVED (unanimous)
Majority Agreement
Quorum reached with majority:
Alpha: approve
Beta: approve
Gamma: reject
Result: APPROVED (2/3 majority)
Split Decision
When members disagree significantly:
-
Initiate Discussion Session
./scripts/god/council.sh session-start "Resolving: PROPOSAL_TOPIC" -
Each Member States Position
- Present full reasoning
- Listen to others' concerns
- Look for common ground
-
Seek Compromise
- Modify the proposal
- Add conditions
- Split into smaller decisions
-
Re-vote if Needed
- Create amended proposal
- Vote again
Deadlock Resolution
If consensus cannot be reached:
-
Defer Decision
- Wait for more information
- Set review deadline
-
Escalate Scope
- Break into smaller decisions
- Address sub-issues separately
-
Time-box Discussion
- Set deadline for decision
- Default action if no consensus
Emergency Consensus
In critical situations, expedited consensus is allowed:
Emergency Criteria
- System crash or imminent failure
- Security breach
- Data loss risk
- Infinite loop/resource exhaustion
Emergency Protocol
-
Declare Emergency
./scripts/god/awakener.sh critical "REASON" -
Take Immediate Action
- One member can act alone
- Document the action immediately
-
Post-Action Review
- Inform other members ASAP
- Document full rationale
- Get retroactive approval
Emergency Action Template
## Emergency Action Report
### Timestamp
[When action was taken]
### Acting Member
[Who took the action]
### Situation
[What triggered the emergency]
### Action Taken
[What was done]
### Justification
[Why immediate action was needed]
### Outcome
[Result of the action]
### Post-Action Votes
- Alpha: [pending/approved/rejected]
- Beta: [pending/approved/rejected]
- Gamma: [pending/approved/rejected]
Consensus Best Practices
Do
- ✅ Present clear evidence
- ✅ Consider all perspectives
- ✅ Propose specific, actionable items
- ✅ Accept compromise when reasonable
- ✅ Document all reasoning
- ✅ Respect deadlines
Don't
- ❌ Vote without reviewing the proposal
- ❌ Reject without suggesting alternatives
- ❌ Take solo action when consensus is required
- ❌ Ignore minority opinions
- ❌ Let proposals languish without voting
- ❌ Make personal attacks
Decision Record
All decisions are recorded in .god/council/decisions/ with this structure:
{
"decisionId": "decision-20260129150000",
"type": "intervention",
"status": "decided",
"createdAt": "2026-01-29T15:00:00Z",
"decidedAt": "2026-01-29T15:30:00Z",
"proposal": {
"author": "alpha",
"description": "...",
"rationale": "..."
},
"votes": {
"alpha": {"vote": "approve", "comment": "...", "timestamp": "..."},
"beta": {"vote": "approve", "comment": "...", "timestamp": "..."},
"gamma": {"vote": "abstain", "comment": "...", "timestamp": "..."}
},
"quorum": 2,
"result": "approved",
"executedAt": "2026-01-29T15:35:00Z"
}
After Consensus
Once a decision is reached:
- If Approved: Execute the proposed action
- If Rejected: Document why and any alternatives
- Update Timeline: Log the decision event
- Notify Stakeholders: If relevant to execution layer
# After approved decision
./scripts/god/observer.sh event "decision" "Proposal approved: DESCRIPTION"
# Execute the action
[perform the approved action]
# Mark as executed
jq '.executedAt = "'"$(date -u +%Y-%m-%dT%H:%M:%SZ)"'"' \
.god/council/decisions/DECISION_ID.json > tmp && mv tmp .god/council/decisions/DECISION_ID.json
Signals
- GitHub stars
- 181
- Forks
- 33
- Last commit
- Feb 2026
Advanced
- Catalog kind
- skill
- Gateway key
god-consensus- Source
- github.com/youglin-dev/aha-loop