customize.toml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. # DO NOT EDIT -- overwritten on every update.
  2. #
  3. # Workflow customization surface for gds-create-game-brief.
  4. #
  5. # Override files (not edited here):
  6. # {project-root}/_bmad/custom/gds-create-game-brief.toml (team)
  7. # {project-root}/_bmad/custom/gds-create-game-brief.user.toml (personal)
  8. [workflow]
  9. # --- Configurable below. Overrides merge per BMad structural rules: ---
  10. # scalars: override wins • arrays: append
  11. # Steps to run before the standard activation (config load, greet).
  12. # Use for pre-flight loads, compliance checks, etc.
  13. activation_steps_prepend = []
  14. # Steps to run after greet but before the workflow begins.
  15. # Use for context-heavy setup that should happen once the user has been acknowledged.
  16. activation_steps_append = []
  17. # Persistent facts the workflow keeps in mind for the whole run
  18. # (studio standards, platform constraints, stylistic guardrails).
  19. # Each entry is either a literal sentence, a skill prefixed with `skill:`, or a
  20. # `file:`-prefixed path/glob whose contents are loaded as facts. Empty by default.
  21. #
  22. # Common opt-ins (set in team/user override TOML):
  23. # "file:{project-root}/**/project-context.md" # load project context if gds-generate-project-context produced one
  24. # "skill:acme-studio:brand-and-rating-guidelines" # a skill that contains studio info
  25. # "Every game brief must anchor on a single core fantasy players can describe in one sentence."
  26. persistent_facts = []
  27. # Executed when the workflow completes (after the user has been told the
  28. # brief is ready). Accepts either a string scalar (single instruction)
  29. # or an array of instructions executed in order. Empty for none.
  30. on_complete = ""
  31. # Default game-brief structure. Treated as a starting point — the LLM adapts it
  32. # to the game, purpose, and genre. Override the path in team/user TOML to enforce
  33. # a different structure (e.g. live-service, narrative-heavy, mobile-F2P).
  34. brief_template = "assets/brief-template.md"
  35. # Run folder location. The brief and optional addendum land inside
  36. # `{brief_output_path}/{run_folder_pattern}/`. Resume-check scans
  37. # `{brief_output_path}` for prior unfinished runs.
  38. brief_output_path = "{planning_artifacts}/briefs"
  39. run_folder_pattern = "brief-{project_name}-{date}"
  40. # Polish passes applied to human-consumed docs at finalize. Each entry is a
  41. # `skill:`, `file:`, or plain-text directive run as a parallel subagent against
  42. # the draft; findings are applied before the user sees it. Encodes standards,
  43. # not options.
  44. #
  45. # Examples:
  46. # "skill:bmad-editorial-review-prose"
  47. # "file:{project-root}/_bmad/style-guides/studio-voice.md"
  48. # "Convert all dates to ISO 8601 format."
  49. #
  50. # Suggested order (broader passes first, narrower last):
  51. # 1. Structural (cuts, reorganization, section sizing)
  52. # 2. Content/voice/conventions (studio standards, tone, terminology, rating)
  53. # 3. Prose mechanics (grammar, clarity, typos)
  54. #
  55. # Override the array in team/user TOML to add additional standards. Append-only:
  56. # base entries cannot be removed or replaced (resolver has no removal mechanism).
  57. polish_passes = [
  58. "skill:bmad-editorial-review-structure",
  59. "skill:bmad-editorial-review-prose",
  60. ]
  61. # Reviewer panel applied at finalize, after polish_passes. Each entry is a
  62. # `skill:`, `file:`, or plain-text directive run as a parallel subagent that
  63. # critiques the draft and returns findings (it does not silently rewrite).
  64. # Prefix an entry with `required:` to make it a hard gate — the workflow will
  65. # not present the brief as final until that reviewer passes or the user waives
  66. # it. `finalize_reviewers` is an alias surface for the same gate. Empty by default.
  67. #
  68. # Examples (set in team/user override TOML):
  69. # "skill:acme-studio:greenlight-review"
  70. # "required:Confirm the core fantasy is stated in a single sentence and the MVP is truly minimal."
  71. # "When the brief targets a rated platform, cross-check content against corp:rating_reference."
  72. reviewers = []
  73. finalize_reviewers = []
  74. # Name or directive of the single reviewer treated as the required gate when
  75. # not expressed inline via a `required:` prefix above. Empty by default.
  76. required_reviewer = ""
  77. # External-source registry. Natural-language directives describing knowledge
  78. # bases, MCP tools, or internal systems the LLM may consult during the workflow
  79. # when a relevant need surfaces. The LLM does NOT query these preemptively — it
  80. # consults them on demand (during Discovery, validation, drafting, etc.). Each
  81. # entry names the tool, the conditions for using it, and any fields it needs.
  82. # If a named MCP tool is unavailable at runtime, the LLM falls back to standard
  83. # behavior and notes the gap. Empty by default.
  84. #
  85. # Examples (set in team/user override TOML):
  86. # "When researching genre context, consult corp:kb_search (database='game-design-docs') before web search."
  87. # "For player-sentiment signal during Discovery, query corp:wishlist_search with project={project_name}."
  88. # "When validating platform-rating claims, cross-check against corp:rating_reference."
  89. external_sources = []
  90. # External-handoff routing. Natural-language directives the LLM applies at
  91. # Finalize to route outputs beyond local files (Confluence, Notion, Google
  92. # Drive, ticket systems, etc.). Each entry names the MCP tool, the destination,
  93. # and the fields it needs. Handoffs run after the artifact is polished and
  94. # before the final user-facing message. URLs or IDs returned by the destination
  95. # are captured and surfaced to the user. If a named tool is unavailable at
  96. # runtime, the handoff is skipped and flagged in the JSON status; local files
  97. # always exist regardless. Fires automatically — users can opt out in their
  98. # prompt for a specific run. Empty by default.
  99. #
  100. # Examples (set in team/user override TOML):
  101. # "After finalize, upload brief.md and addendum.md to Confluence via corp:confluence_upload (space_key='GAME', parent_page='Game Briefs', label='brief', author={user_name})."
  102. # "Post a ready-for-review ping to Slack via corp:slack_post (channel='#game-design', text='New game brief: '+{confluence_url})."
  103. external_handoffs = []