Skip to content

Review fixes - #4

Merged
dataatsky merged 7 commits into
mainfrom
review-fixes
Sep 27, 2026
Merged

dataatsky merged 7 commits into
mainfrom
review-fixes

Conversation

@dataatsky

Copy link
Copy Markdown
Owner

No description provided.

dataatsky and others added 7 commits September 27, 2026 14:15
- TextWorld is now the single source of truth for each agent's hunger,
  mood, goal, position and inventory; hunger rises in world.update().
- Add a VERBS registry (+ aliases) and validate_action(), so every action
  must use a known verb and a target the agent can actually reach.
- Scenario loader reads objects declared inside rooms, derives affordances
  from object type, supports locked doors, per-scenario hunger rate and
  toggles for random events / neighbor visits.
- Items in open containers can be taken directly ("take key").
- Restore idle-object perception and surface the SensoryCortex qualia.
- Every scenario now declares a scripted SOLUTION and FAILURE, and
  tests/test_scenarios.py proves each is winnable and losable.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- CognitiveLoop.step() runs one OODA cycle; run_loop() and benchmark.py
  both call it, so benchmarks exercise the real cognition.
- agent_status is a read-only view of the world's agent; a fresh world is
  seeded from config, a scenario world keeps its own state.
- Apply the subconscious emotional shift once per cycle (it was applied
  twice, doubling every level_delta).
- Drop ungrounded impulses before imagining; replace an ungrounded final
  decision with the strongest grounded impulse.
- Goals: adopt a proposed goal only when none is active; support
  goal_status completed/abandoned.
- Theory of Mind runs when another agent speaks or at most every
  TOM_INTERVAL cycles, using what they actually said.
- Default AGENT_GOAL is now empty so Adam proposes his own goals.
- Fix /get_state current_goal, which read a non-existent attribute.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Replace instructor + openai with ollama.chat(format=<json schema>), so
  replies always parse; the verb field is an enum built from VERBS.
- Re-ask the model with the validation error when a reply doesn't fit.
- Collapse the six endpoint bodies into one handler; fallbacks are marked
  with "psyche_fallback": true.
- Prompts: generate the verb toolbox from the registry, show reachable
  objects/items/exits/doors, give reflection the world state and a
  goal_status field.
- Fix failed-action counting ("open the" -> "open fridge").
- Pass adamsec prompt-injection text through to the prompts so the
  harness actually tests something.
- Refresh requirements pins to the installed versions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
SENTENCE_MODEL now defaults to all-MiniLM-L6-v2. If memory cannot start
(no model, load failure, Chroma/Pinecone unavailable) MemoryStore logs a
single LONG-TERM MEMORY DISABLED warning with the reason.
MEMORY_BACKEND=none turns memory off quietly.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Runs on Python 3.10 and 3.13 with CPU-only torch to keep installs small.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- README/MANUAL: Chroma default memory, Ollama structured outputs, verb
  registry workflow, scenario format with SOLUTION/FAILURE, goal lifecycle.
- .env.example: psyche port 5001 (matches the server), llama3 default,
  empty AGENT_GOAL, memory backend options.
- Mark adamsec as experimental; move the QuTiP demo to experiments/.
- Stop tracking .DS_Store and .psyche_ui.json.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Small models fill the field even when Adam is alone, which made the log report imaginary Theory of Mind.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@dataatsky
dataatsky merged commit 305e4ad into main Sep 27, 2026
4 checks passed
@dataatsky dataatsky mentioned this pull request Sep 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant