Skip to content

feat: add persona runtime demo with multiple personas#8

Open
joy7758 wants to merge 1 commit intomainfrom
persona-runtime-demo
Open

feat: add persona runtime demo with multiple personas#8
joy7758 wants to merge 1 commit intomainfrom
persona-runtime-demo

Conversation

@joy7758
Copy link
Owner

@joy7758 joy7758 commented Mar 15, 2026

Summary

  • add researcher and marketing persona JSON files
  • add a lightweight persona loader for runtime use
  • add a runnable demo that loads the selected personas and prints their runtime summaries

Validation

  • ran Loaded personas:

Design Persona (Designer)
skills: UI Design, UX Research, Prototyping, Adobe XD, Figma

Research Persona (Researcher)
skills: literature search, information synthesis, technical explanation

Marketing Persona (Marketing Manager)
skills: copywriting, campaign design, product positioning

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 40e63ee082

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +2 to +3
"name": "Marketing Persona",
"role": "Marketing Manager",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Add required persona_id to new persona file

This JSON is placed in personas/, and the registry code (pop.registry) iterates that directory and loads each file with pop.loader.load_persona(), which requires a non-empty persona_id. Because this file omits persona_id, calls like list_persona_ids() (and resolve_persona() for refs that scan past this entry) now raise ValueError and break registry/CLI flows whenever these demo personas are present.

Useful? React with 👍 / 👎.



def run_demo() -> None:
personas = load_all_personas(

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Resolve demo persona paths from project root

run_demo() calls load_all_personas() without a folder, so the loader defaults to relative personas/ under the current working directory. If the script is launched from outside the repo root (for example python /workspace/persona-object-protocol/demos/persona_agent_demo.py), it fails with FileNotFoundError for personas/design_persona.json despite already computing PROJECT_ROOT.

Useful? React with 👍 / 👎.

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