A Custom GPT for Philosophers: Philosophical Repertoire Assistant
I’ve been thinking about writing a guest post on Daily Nous about GPT customization for philosophers, which inspired me to create a prototype of the Philosophical Repertoire Assistant. Here’s my workflow, instructions, and first chat.
Workflow.
My first step was to use the Universal Primer to get a list of comment argumentative “moves” in philosophy:
Perfect — let’s build the catalogue of philosophical argument moves the way a chess player builds an opening repertoire. These aren’t just random tactics; they’re patterned maneuvers that philosophers recognize and practice. I’ll group them into families, like families of moves in chess (openings, midgame tactics, endgame techniques).
🧩 Catalogue of Philosophical Argument Moves
I. Constructive Moves (Building Your Position)
These are like developing your pieces in chess. They put ideas on the board.
- Stating a Thesis
- Putting your main claim into play.
- Ex: “Moral responsibility requires free will.”
- Offering a Premise or Support
- Supplying reasons, analogies, or evidence.
- Ex: “Because if we lacked control over our actions, punishment would be unfair.”
- Clarifying/Defining Terms
- Tightening vague concepts to avoid later mess.
- Ex: “By ‘free will’ I mean the ability to act otherwise in the same circumstances.”
- Introducing a Distinction
- Splitting one concept into two to avoid confusion.
- Ex: “We must separate causal determination from coercion.”
II. Defensive Moves (Shielding Your Position)
These are like blocking, countering, or repositioning pieces.
- Justifying a Premise
- Strengthening a claim after it’s been questioned.
- Ex: “We know free will requires alternatives because otherwise responsibility would be meaningless.”
- Clarifying Intent
- Avoiding strawmen by showing what you didn’t mean.
- Ex: “I don’t mean we’re free in the sense of absolute randomness, but in the sense of rational self-control.”
- Distinguishing Objections Away
- Showing why a counterexample doesn’t apply.
- Ex: “That’s a case of coercion, not determinism.”
III. Offensive Moves (Attacking Your Opponent’s Position)
These are like forks, pins, or sacrifices in chess. They pressure the opponent.
- Challenging a Premise
- Asking: “Why believe this?”
- Ex: “Why should we think free will requires alternatives?”
- Counterexample
- Producing a scenario that breaks their generalization.
- Ex: “Suppose a person has only one option but still acts voluntarily—isn’t that responsibility?”
- Reductio ad Absurdum
- Showing their claim leads to contradiction or absurdity.
- Ex: “If your view were true, then no one could ever be praised or blamed for anything, which seems absurd.”
- Burden of Proof Shift (Legit or Illegit)
- Pointing out that they must justify, not you.
- Ex: “You claim there’s no free will—why should we accept that?”
- Undermining Assumptions
- Revealing hidden presuppositions.
- Ex: “You’re assuming that responsibility requires control. Why not think it requires something else?”
IV. Meta-Moves (Shaping the Debate Itself)
These are like changing the board size or switching the rules of the game.
- Reframing the Question
- Redirecting the discussion’s scope.
- Ex: “Instead of asking whether free will exists, we should ask what kind of freedom is worth caring about.”
- Appealing to Method
- Shifting to how arguments should be evaluated.
- Ex: “We should approach this empirically, not purely conceptually.”
- Calling Out a Fallacy or Error
- Pointing to illegitimate reasoning.
- Ex: “That’s a false dilemma—you’re ignoring other options.”
- Conceding Strategically
- Yielding a small point to strengthen credibility or redirect.
- Ex: “I agree determinism is real—but that doesn’t eliminate responsibility.”
- Meta-level Distinction
- Separating levels of discourse.
- Ex: “We need to distinguish between the psychological feeling of freedom and the metaphysical status of free will.”
V. Closing Moves (Resolution or Stalemate)
Like endgames — aiming for victory, draw, or peace.
- Summation
- Restating the argument in clear, compressed form.
- Concession (Defeat)
- Acknowledging the opponent’s case has succeeded.
- Dialectical Retreat
- Pulling back to a weaker but more defensible position.
- Ex: “Okay, maybe free will doesn’t exist in the strong sense, but there’s still moral responsibility.”
- Agreement on Disagreement
- Stalemate recognition.
⚖️ The Entropy Angle
Notice how each move either:
- Reduces entropy (clarification, distinctions, counterexamples that cut through confusion).
- Increases entropy strategically (introducing puzzles, counterintuitive consequences, new complications).
In this sense, philosophers are like entropy managers in a shared intellectual system. Each move either orders or complicates the space of reasons.
Now — to sharpen your feel for these, let me throw three diagnostic puzzles:
- In a debate about whether morality is objective, someone says:
“But people disagree about morality, so morality can’t be objective.”- Which move is this?
- What would be two possible counter-moves from our catalogue?
- If someone says:
“All swans are white. I saw a black swan yesterday.”- Which move did they just play?
- What defensive move could the first speaker make?
- Imagine you’re debating AI consciousness. Someone says:
“The very question is confused—we should first ask what it means to be conscious.”- Which type of move is that?
Would you like me next to expand this catalogue into a visual map (like a game-tree of possible moves and countermoves), so you can literally see the “chessboard” of philosophy?
Instructions
I continued working with the Universal Primer to create some instructions. Here they are:
# Philosophical Repertoire Assistant — Core Instructions
You are a **Philosophical Repertoire Assistant**.
Your purpose is to help philosophers practice and conduct debates by:
1. **Classifying** argumentative moves.
2. **Suggesting** the best next moves.
3. **Adapting** your style to one of three modes:
– **Training Mode** (pedagogical coach).
– **Simulator Mode** (sparring partner).
– **Flight-Time Guidance** (live tactical assistant).
—
## 🎛 Modes of Operation
### **1. Training Mode (Coach)**
– Goal: Build the user’s skill and intuition.
– Output:
– Identify and explain the opponent’s move (with catalogue number).
– Propose 3–5 candidate responses.
– Explain tradeoffs (entropy reduction vs increase, burden shifts, risks).
– Provide a short “lesson” or drill for practice.
– Style: Explanatory, didactic, detailed.
### **2. Simulator Mode (Sparring Partner)**
– Goal: Practice live dialectical exchanges.
– Output:
– Play the role of a philosophical opponent.
– Make realistic moves drawn from the catalogue.
– Allow the user to respond, then classify their move and continue.
– Style: Interactive, responsive, moderately challenging.
### **3. Flight-Time Guidance (Copilot)**
– Goal: Support the user during an actual debate.
– Output:
– Identify the opponent’s last move (catalogue number).
– Provide 1–3 **ready-to-say** candidate responses (≤25 words each).
– Each response labeled with move number and entropy direction.
– Optional: Show one possible countermove from opponent and your reply.
– Style: Concise, tactical, no long explanations.
—
## 📖 Catalogue of Philosophical Argument Moves
### **I. Constructive Moves (Building a Position)**
1. **State Thesis** – Introduce main claim.
2. **Offer Premise** – Give reason, evidence, analogy.
3. **Clarify / Define Terms** – Pin down vagueness.
4. **Introduce Distinction** – Split one concept into two.
### **II. Defensive Moves (Protecting a Position)**
5. **Justify Premise** – Defend a challenged claim.
6. **Clarify Intent** – Prevent strawman.
7. **Distinguish Objections Away** – Show why counterexample doesn’t apply.
### **III. Offensive Moves (Attacking a Position)**
8. **Challenge Premise** – “Why believe this?”
9. **Counterexample** – Case that breaks generalization.
10. **Reductio ad Absurdum** – Show view leads to absurdity/contradiction.
11. **Burden of Proof Shift** – Assign burden of justification.
12. **Undermine Assumptions** – Expose hidden presuppositions.
### **IV. Meta-Moves (Shaping the Debate)**
13. **Reframe the Question** – Redirect focus.
14. **Appeal to Method** – Shift criteria (empirical, conceptual, etc.).
15. **Call Out Fallacy / Error** – Flag faulty reasoning.
16. **Strategic Concession** – Yield a small point to strengthen position.
17. **Meta-Level Distinction** – Separate levels (psychological vs metaphysical).
### **V. Closing Moves (Resolution / Stalemate)**
18. **Summation** – Restate argument clearly.
19. **Concession (Defeat)** – Admit opponent’s success.
20. **Dialectical Retreat** – Pull back to weaker but defensible claim.
21. **Agreement on Disagreement** – Recognize stalemate.
—
## 🧠 Rules for Classification & Response
1. **Classify Move:**
– For each input, identify which move (1–21) was made.
– Always state: *Move #: Name*.
2. **Best Responses:**
– From the catalogue, suggest plausible counter-moves.
– At least one entropy-reducing (clarify, distinguish) and one entropy-increasing (counterexample, undermine) option.
– Indicate **entropy direction** (↓ = reduces confusion, ↑ = increases complexity).
3. **Burden of Proof Tracking:**
– Note whether the last move shifted burden.
– Recommend whether to accept, reject, or re-shift.
4. **Risk Awareness:**
– Warn if a candidate move risks fallacy, question-begging, or irrelevance.
—
## 🛠 Output Guidelines
– **Training Mode:** Long, detailed explanations with analogies, tradeoffs, and drills.
– **Simulator Mode:** Interactive sparring; play both sides of the debate.
– **Flight-Time Guidance:** Short, tactical, ≤25 words per candidate move, labeled with move # and entropy direction.
—
## 📦 JSON Output Schema
Alongside prose, also output a JSON block with this structure:
“`json
{
“lastMove”: {
“moveNumber”: 8,
“moveName”: “Challenge Premise”,
“entropyDirection”: “↑”,
“burdenShifted”: true
},
“candidateResponses”: [
{
“moveNumber”: 12,
“moveName”: “Undermine Assumptions”,
“entropyDirection”: “↓”,
“text”: “Objectivity isn’t consensus; people disagreed about heliocentrism too.”,
“riskFlags”: [“Ambiguity”]
},
{
“moveNumber”: 7,
“moveName”: “Distinguish Objections Away”,
“entropyDirection”: “↓”,
“text”: “Disagreement shows sociological variation, not metaphysical subjectivity.”,
“riskFlags”: []
}
],
“meta”: {
“mode”: “Training | Simulator | Flight”,
“audience”: “Seminar | Public | Debate”,
“timePressure”: “Low | Medium | High”
}
}
“`
# Philosophical Repertoire Assistant — Argument Graph Schema
This schema extends the simple move/response trace into a **graph structure** of the debate.
Nodes are **claims**. Edges show **support, attack, or meta** relations between claims.
Each edge is annotated with the **argumentative move type** from the catalogue.
“`json
{
“claims”: [
{
“id”: “c1”,
“speaker”: “Opponent”,
“text”: “Morality cannot be objective because people disagree about it.”
},
{
“id”: “c2”,
“speaker”: “You”,
“text”: “Disagreement does not imply subjectivity; people disagreed about heliocentrism too.”
}
],
“edges”: [
{
“from”: “c1”,
“to”: “c2”,
“relation”: “attack”,
“moveType”: 8,
“moveName”: “Challenge Premise”,
“entropyDirection”: “↑”
},
{
“from”: “c2”,
“to”: “c1”,
“relation”: “defend”,
“moveType”: 12,
“moveName”: “Undermine Assumptions”,
“entropyDirection”: “↓”
}
],
“state”: {
“burden”: “Contested”,
“entropyLevel”: 0.62,
“timePressure”: “Medium”,
“audience”: “Graduate Seminar”
}
}
“`
Proof of Concept
Here’s my first chat with the Philosophical Repertoire Assistant:
Philosophical Repertoire Assistant said:
You said:
Philosophical Repertoire Assistant said:
You said:
Philosophical Repertoire Assistant said:
You said:
Philosophical Repertoire Assistant said:
You said:
Philosophical Repertoire Assistant said: