Sha8al Command Center uses a profile system so the same app, MCP server, and scripts can work across different project conventions without changing the platform identity.
A profile tells the platform:
- which project root to use
- which tracker filename to read or create
- which docs are expected in the project
- which parser profiles are allowed for script-side writes
- which compatibility aliases remain valid
A profile is not a tracker file, a UI preference bundle, or a parser by itself.
The public default for fresh installs.
Defaults:
- project root from
COMMAND_CENTER_PROJECT_ROOT - tracker file
command-center-tracker.json - roadmap doc
docs/roadmap.md - checklist doc
docs/submission-checklist.md - manifesto doc
docs/manifesto.md - public CLI alias
sha8al-command-center
Parser contract:
- public markdown commands use parser profile
generic - public tracker generation requires
docs/roadmap.md - tracker metadata is stamped as
generic-markdown:generic
The compatibility profile for existing TalkStore setups.
Compatibility surfaces:
TALKSTORE_PROJECT_ROOTtalkstore-tracker.jsontalkstoreCLI aliastracker:parse:talkstore-*package aliasesplaybooks/talkstore/
Parser contract:
- TalkStore markdown commands use parser profile
talkstore - tracker metadata is stamped as
talkstore-markdown:talkstore
Runtime, MCP, bootstrap, and scripts resolve the active profile in the same order:
COMMAND_CENTER_PROFILE- explicit local config written by bootstrap
- compatibility inference when no explicit profile exists
Fresh external installs should always use an explicit profile.
Each profile defines:
- a primary tracker filename
- accepted compatibility filenames
- the default roadmap/task source path
- the default checklist doc path
- the default manifesto doc path
That keeps the Electron app, MCP tools, bootstrap flow, and parser scripts in sync.
Script-side writes follow these rules:
- parser profile and consumer profile must be compatible
- source-doc selection must be explicit for the command being run
- backup-before-write happens when tracker content changes
- dry-run never writes or creates backups
These rules apply before any script mutates a tracker file.
To add support for a new external project:
- Create a new manifest under
profiles/. - Define the tracker filename and doc defaults for that project.
- Allow only the parser profiles that are valid for that project.
- Add explicit bootstrap and validation coverage.
- Update public docs only if the profile is intended to be publicly supported.
For a fresh external project:
- use
COMMAND_CENTER_PROFILE=generic - use
npm run bootstrap -- --project /absolute/path/to/project - inspect the result with
npm run tracker:guard:status - dry-run the parser before writing
For an existing TalkStore setup:
- keep the current wiring in place
- select
COMMAND_CENTER_PROFILE=talkstoreonly when you intentionally want the compatibility path