feat: integrate Brainwares CLI backend & centralized Promptwares vaults#1672
Draft
rorychatt wants to merge 78 commits into
Draft
feat: integrate Brainwares CLI backend & centralized Promptwares vaults#1672rorychatt wants to merge 78 commits into
rorychatt wants to merge 78 commits into
Conversation
…kaging, and Knowledge Library sidebar app
…mmands to bw CLI and update sandbox permissions
…ents into Library/ folder
…in .brainwares vault
… back to global brainwares memories and add global sandbox permissions
…and project-add vault auto-initialization hooks
…nd rename local vault to Promptwares
…olve workingDir to workspaceDir directly
…/Brainwares/<projectName>
…ed vault ~/.tendril/Promptwares
… and subdirectory project-stack memories
… project subfolders
…te, and maintain memories during plan creation and execution
…ault memories systematically
…d trigger UpdateMemories background jobs
…name/promptware/ directory
…erride for target project vault namespaces
…ith TendrilProject for bw commands
…idget and restyled layout with switch toggle and inline actions
… into agent processes
…citly use ProjectName context variable
…r namespaces, and update promptwares to cross-reference dependencies/tests
…ages for ignored files
…cate system workflows
…tware and workflow jobs
…ares and fix local sandbox in test environments
…n Workflow Builder and runtime dispatch service
…low connection steps
…ares inside Plan Diff
rorychatt
force-pushed
the
epic/brainwares
branch
from
July 19, 2026 14:12
30be423 to
1be16c1
Compare
Staging preview |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Centralized Vault Migration & CLI Resolution
~/.tendril/Promptwares/memories/coalmininggame/project-stack.md).load_memoriesandfind_markdown_filesto load all nested memories and prefix their names with their parent subdirectory (e.g.coalmininggame/project-stack).resolve_memory_pathandhandle_addinside the CLI based on the active Git repository directory name, allowing seamlessbw read project-stackorbw update project-stackcalls from inside a repo root.3. Rust CLI Workspace Resolution Updates
get_workspace_rootinsidebrainwares/src/vault.rsto find the workspace/repository root by walking up from the current working directory to find a.gitfolder rather than assuming the parent of the vault path is the workspace root.find_vault_pathto locate the global~/.tendril/Promptwaresvault centrally if no local candidate is found.~/.cargo/bin/bw.4. Dynamic Workspace & Active Project Directory Resolution
LibraryApp.csandPromptwareRunner.cswhereworkingDirwas mapped to the parent directory of the repository instead of the repository root itself.LibraryApp.csto dynamically resolve the active project (e.g.coalmininggame) matching the current working directory. This ensuresUpdateMemoriesjobs are launched with the correct repository namespace instead of fallback\"Auto\".ResolveBrainwaresVaultDirto ignore the deployed promptware template directory~/.tendril/Promptwares.5. PowerShell Elimination & Inline C# MSBuild Task
Ivy.Tendril.csprojto compress templates on build.pack-promptwares.ps1andDeleteMemory.ps1scripts.update-promptwaresfully functional during local development.6. Centralized & Unified Promptware Memories
~/.tendril/Promptwares/<PromptwareName>/Memory/) to the repository-specific central vault subfolders:~/.tendril/Promptwares/memories/<repo-name>/promptware/PromptwareHelper.ResolveMemoryDirectoryto populate a project'spromptwarefolder automatically from templates if a note is missing.SyncPromptwareMemoriesToCentralVaultto recursively copy and initialize promptware notes for existing projects and global fallbacks.coalmininggame/promptware/plansorglobal/promptware/cli-quirks).7. Memory Types (File-based vs. User-based) & Hash Invalidation
brainwares:MemoryType::File(material files tied to repository source code) andMemoryType::User(generic knowledge notes).bw statusandbw read <name>. Runningbw readon a file-based memory note dynamically calculates linked file hashes and prints aWARNINGbanner if code updates have caused the memory to become outdated.8. Bidirectional Memory Relations & CLI Command
bw relate <memory> <target>(and--remove) subcommand. This builds a bidirectional graph by establishing arelations: [...]array inside the frontmatter of memory files.[[wiki-links]]for establishing dependency maps.bw statusto check both frontmatter relations and inline legacy wiki-links for broken links, and updatedget_backlinksto index both sources cleanly.ContentView.csto deserialize and render frontmatter relations inside the ECharts BrainMap graph, resolving the problem where relations between memory pages were no longer shown.AGENTS.md,CLAUDE.md, etc. viabw integrate) and theUpdateMemoriesprompt instructions to mandate using thebw relateCLI instead of inline markdown wiki-links.9. Whitespace-Tokenized Search Querying
bw queryto split search terms on whitespace, ensuring all parsed tokens match either the note's name, title, tags, or body content, and sorting matching pages by relevance score.UX / UI & Agentic Feature Enhancements
10. Library Search & Suffix Refactoring
+) button from a separate row/layout cell in the Library sidebar into the search input component's.Suffix()slot:11. Recursive Memories Scanning in Library UI
Directory.GetFiles(memoriesDir, "*.md")insideLibraryApp.cswith a recursive directory lookup usingSearchOption.AllDirectories.coalmininggame/project-stack) so they render seamlessly in the Library sidebar list.12. Project Filter Dropdown in Sidebar
projectFilterdropdown usingToSelectInputto the Library sidebar. Selecting a project dynamically filters the list of memories and ECharts BrainMap graph nodes/edges by project folder, supporting cleaner per-project context auditing.13. Living Memory Vault (Planner & Executor Integration)
bw statusand query/read relevant memory notes during the research stage. Optionally prompts the agent to add design notes (e.g.,bw add design-<plan-id>) to document architectural decisions.bw statusbefore worktree creation, and run a maintenance phase at the end of execution to update outdated hashes (bw update) and link new files (bw link) automatically.14. Agentic Memory Updater (Selected Files)
UpdateMemorieswithUpdateMemoriesArgscarrying selected repository files to document.Promptwares/UpdateMemories/instructing the AI agent to systematically scan source codes, generate corresponding markdown notes in the Promptwares vault, link references (bw link), and sync hashes (bw update).UpdateMemoriesDialogto filter and select files from the active repository (usinggit ls-files) and queue background jobs. These run in the standard Tendril Jobs interface with live output feeds.15. AI Edit Memory Dialog & Job
EditMemory(withEditMemoryArgs) which targets a specific memory note and takes custom instructions from the user.Promptwares/EditMemory/instructing the AI agent to read the memory note, read referenced code if any, modify the note based on user instructions usingbw write, sync reference hashes (bw update), and runbw status.AiEditMemoryDialogto capture user instructions/prompt and submit it as a background job.App Categorization, Connections & Workflows (New Features)
16. App Categorization and Styling Rules
17. Connections Integration (Third-Party APIs)
18. Workflows Automation & Canvas Builder
JobLauncher) supporting Connection steps, Prompt steps, and custom dispatches.19. Multi-Tab Chat Session Manager & Spooling Spawners
claude) directly as local subprocesses, piping real-time output straight to PTY terminal or conversational streams.RichTextBlockWidget.tsxto prevent null-property crashes.20. Plan Diff, Review, and Express Validation
PlanDiffViewReact widget, review dialogs, and Express validation mode with test coverage.System Workflows, Layout Builder & Jobs Filtering
21. System Workflows and Core Lifecycle
IsSystemproperty) with a database migration."Tendril Core Lifecycle"loaded automatically on startup mapping out draft planning, reviews, implementations, verifications, and pull requests.22. Inline Promptware Inspector & Node Selection
OnNodeSelect).Program.mdand related C# or Python scripts inTools/) directly within the canvas.23. Advanced Jobs Filtering
24. Layout Padding Rules Compliance
ConnectionsAppandAgentApplayouts.System Workflows Deduplication & Webhook Triggers
25. Webhook Triggers inside visual Workflow Builder
/api/jobsand payload details forwebhooktype triggers.26. Deduplicate System Workflows
WorkflowsAppto restrict automatic seeding to non-system project-specific workflows on project filtering.GetWorkflowsqueries to pull both current project-scoped workflows and global system-wide lifecycle templates, resolving the bug where system workflows would disappear under active filters.27. Job Metadata & Project Scoping
"Auto"on the main dashboard logs.JobService.csproject mapping to parse and match active database context for custom runner dispatches.Timed Triggers & Tendril Event Triggers
28. Timed (Cron) and Event-based Workflow Triggers
WorkflowTriggerServicestarting a timer evaluation checking for active crons (e.g.*/5 * * * *matching active UTC minutes).WorkflowTriggerServiceas a singleton inServiceRegistration.cslistening to file workspace watch events.PrStatusSyncServiceto invokeWorkflowTriggerService.CheckAndTriggerPlanCompletedAndMergedwhen PR status changes to"Merged".Natural Language Connections & Dynamic Canvas Sizing
29. Auto-Translation of Natural Language Arguments in Workflows
JobLauncher.csfor connection step arguments that are written in natural language (non-JSON text).claude) to translate natural language inputs into structured parameter JSON objects matching the connection provider's target schema (Slack, Discord, or GitHub).30. Dynamic Canvas Card Sizing in Workflow Builder
ResizeObserverlayout inside ReactWorkflowBuilder.tsx.BrainMap.tsxcategory labels layout to resolve dynamically.31. Workflow Trigger Service Unit Tests & Immediate Filters Update
WorkflowTriggerServiceTests.csvalidating cron expressions (e.g. weekly schedules) and event-based plan completed dispatches.config.yamlinsidePromptwareHelper.csto ensure folders are initialized dynamically.Filesystem Connections & Advanced Plan Diff Reviewed Checking
32. Filesystem Connections (YAML Migration)
connections/subfolder.Program.csandServiceRegistration.csto eliminate hardcoded provider mappings.33. Inline Code Editing & Git Commits from Diff
OnDirectEditinPlanDiffView.tsxand C#ChangesTabView.csenabling direct inline code line editing in the diff view.34. GitHub-style Viewed Checkboxes & progress indicators
Chat Renaming & Extended Diff File Management Actions
35. Simplified App Naming
36. Extended Diff File Management Actions (View, External Edit, & Git Delete)
git rm, and commits the deletion to the branch immediately.37. Detailed Workflow Jobs Status Titles
JobService.csto dynamically append the cron schedule or merged plan titles onto background workflow dispatches (e.g.,Run workflow: Deploy (Plan merged: Add login screen)).Workflow Cancellation and Event Trigger Conditions
38. Nested Sub-Job Cancellation Support
JobLauncher.csstep-execution queue loop to continuously monitor cancellation tokens on active parent jobs.39. Interactive Graph Watermark, Gutter Columns, & Vault Cleaning
BrainMap.tsx.deep,Epic,Chore,antigravity) automatically insidePromptwareHelper.csand refactored config loaders to parse YAML safely viaTendrilSettings.Promptwares Brainwares Integration Updates
40. Promptwares Namespace-Aware Vault Actions
CreatePr,Documentation, andExecutePlanto consistently pass the--project <TendrilProject>flag to thebwCLI tool.bw readandbw writeCLI subcommands rather than directly modifying the filesystem, ensuring correct relative scoping and namespace hashing.[[wiki-links]]across all prompt structures, requiring using thebw relateCLI instead.