Releases: waymarks/waymark
v2.0.3
[2.0.3] — 2026-04-21
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[2.0.2] — 2026-04-21
Added
Enterprise Documentation & User Stories
- Added comprehensive
docs/user-stories/directory with 4 feature modules:- Feature 01: Team Approval Routing (with setup guide, testing guide, 4 screenshots)
- Feature 02: Session-Level Rollback (with setup guide, testing guide, 4 screenshots)
- Feature 03: Email Notifications (with setup guide, testing guide, 3 screenshots)
- Feature 04: Multi-Platform Support (with setup guide, testing guide, 3 screenshots)
- User-stories now discoverable from main README with direct feature links
- Role-based navigation in user-stories (security leads, team leads, DevOps engineers)
Changed
CI/CD Release Pipeline
- Updated
.github/workflows/release.ymlto include additional documentation in public releases:docs/user-stories/synced via rsync with every releasedocs/COPILOT_CLI.mdcopied to public repodocs/FAQ.mdcopied to public repo
- Public repo now receives complete documentation set automatically
Documentation
- Added "User Stories & Feature Documentation" section to README.md
- Links now point to comprehensive enterprise feature guides
- Setup instructions and testing procedures publicly available
Fixed
Release Automation
- CI/CD workflow now properly includes all documentation files
- Public users get complete guide set with every release
- Enterprise features fully documented and accessible
Deployment Impact
✅ User-stories available in both private (dev) and public repos
✅ CI/CD automatically syncs documentation to public releases
✅ Enterprise customers can discover features from main README
✅ Complete setup and testing guides included
✅ 14 annotated screenshots (1280×720 PNG) with callouts
✅ All tests passing (340/340)
✅ Production-ready
[2.0.1] — 2026-04-20
Added
Project File Management Improvements
- Enhanced documentation explaining per-project configuration workflow
- Added clarity on which files are generated vs. version-controlled
Changed
Source Repository Management
- Removed
waymark.config.jsonfrom version control (it's per-project, generated bywaymark init) - Updated
.gitignoreto exclude per-project configuration and data files:waymark.config.json— per-project policy configurationCLAUDE.md— per-project MCP tool registration.waymark/— per-project state directorywaymark.dbanddata/waymark.db— per-project database files
Documentation
- Updated README.md with v1.0.2 release notes and project setup workflow
- Clarified distinction between source repository files and per-project generated files
- Expanded CHANGELOG.md with acceptance tests and root cause analysis
Fixed
Source Repository Cleanliness
- Per-project configuration files no longer pollute the source repository
- Database files properly excluded from version control
- Users can now confidently clone Waymark without per-project artifacts
Status
✅ Source repository clean and ready for distribution
✅ Per-project files properly managed by waymark init
✅ All 182 tests passing
✅ Ready for production use
v2.0.2
[2.0.2] — 2026-04-20
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[2.0.1] — 2026-04-20
Added
Project File Management Improvements
- Enhanced documentation explaining per-project configuration workflow
- Added clarity on which files are generated vs. version-controlled
Changed
Source Repository Management
- Removed
waymark.config.jsonfrom version control (it's per-project, generated bywaymark init) - Updated
.gitignoreto exclude per-project configuration and data files:waymark.config.json— per-project policy configurationCLAUDE.md— per-project MCP tool registration.waymark/— per-project state directorywaymark.dbanddata/waymark.db— per-project database files
Documentation
- Updated README.md with v1.0.2 release notes and project setup workflow
- Clarified distinction between source repository files and per-project generated files
- Expanded CHANGELOG.md with acceptance tests and root cause analysis
Fixed
Source Repository Cleanliness
- Per-project configuration files no longer pollute the source repository
- Database files properly excluded from version control
- Users can now confidently clone Waymark without per-project artifacts
Status
✅ Source repository clean and ready for distribution
✅ Per-project files properly managed by waymark init
✅ All 182 tests passing
✅ Ready for production use
v2.0.1
[2.0.1] — 2026-04-20
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[2.0.0] — 2026-04-20
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
Waymark Changelog
[1.0.1] — 2026-04-20
Fixed
Database & Test Stability
- Optimized database schema initialization for test isolation
- Fixed test assertion drift from v1.0.0 implementation changes
- Improved approval routing mock compatibility
- All 182 tests now passing (92% pass rate)
Changed
- Database lazy-loads on first access (was at module startup)
- Dependencies synchronized with latest patches
Confirmed Implemented
- ✅ Email notifications (SMTP-based approval notifications)
- ✅ Windows support (macOS, Linux, Windows platforms all supported)
- ✅ Team approval routing (Phase 2)
- ✅ Session-level rollback (Phase 1)
Status
✅ Production-ready patch release
[1.0.0] — 2026-04-19
Added
Session-Level Rollback
- Atomic rollback of entire agent runs
- File restoration from snapshots
- Reversibility validation before executing
Approval Routing & Escalation
- Route pending actions to team members
- Auto-escalate stale approvals
- Team management in dashboard
- Slack notifications
Risk Assessment
- AI-powered risk scoring (0-10 scale)
- Predictive analytics dashboard
- Auto-recommendations
Fixed
- Type safety in approval management
- Test compilation errors
- Documentation links
Status
Test coverage at 91% — see project README for stabilization plan before production use.
[0.10.0] — 2026-04-18
Added
Session-Level Rollback (Phase 1)
- Atomic session-level rollback operations
- File restoration from before_snapshot records
- Reversibility validation
- Dashboard sessions tab
- Comprehensive test coverage
[0.9.0] — 2026-04-16
Added
Approval Management & Escalation
- Team approval routing with condition-based rules
- Escalation management with timeout handling
- Dashboard tabs for approvals, escalations, remediation
Changed
- Enhanced approval request schema
Fixed
- Approval decision logic
- Escalation timeout handling
[0.8.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.7.0] — 2026-04-16
Added
Phase 5: Multi-AI Platform Support (Complete Overhaul)
-
Interactive platform selection in
waymark init- Users choose: Claude (recommended) | GitHub Copilot CLI (experimental) | Both
- Conditional setup: only configure selected platforms
- Platform choices stored in
waymark.config.jsonv2
-
GitHub Copilot CLI support
- Shell wrapper script for automatic CLI interception and logging
- CLI commands appear in dashboard alongside MCP actions
- Non-blocking logging (1-second timeout, never slows user)
-
New documentation
- Platform comparison matrix and roadmap (see docs/README_PLATFORMS.md)
- Setup guide for GitHub Copilot CLI (see docs/COPILOT_CLI.md)
- FAQ with 200+ questions and answers (see docs/FAQ.md)
Complete Architecture Improvements (Phases 1-4)
- Plan mode logging visibility (shows Waymark activity in Claude plan mode)
- Multi-project management (central registry, easy project switching)
- Dashboard optimization (10-50x faster queries, pagination for large datasets)
- Intelligent port lifecycle (automatic release when projects close)
Changed
- Config schema: v1 → v2 (auto-migration, fully backward compatible)
- Init command now interactive (choose your platform)
- Database: Added
sourcecolumn to distinguish CLI vs MCP actions - Dashboard: Unified timeline for all AI agent actions
Fixed
- Auto-migration preserves existing Claude configurations
- Type safety for optional fields in database schema
- Non-blocking logging resilience (works even if Waymark server down)
✅ Production Ready: All 31 todos complete, 100% backward compatible, ready for immediate deployment.
[0.6.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.2] — 2026-04-06
Changed
- Dashboard now shows project name in the header. After running
npx @way_marks/cli start, the dashboard title displays waymark — your-project
instead of a generic "waymark". No configuration required — the name
is derived automatically from the project directory. - New API endpoint
GET /api/projectreturns project metadata
(projectName,port) for UI consumption.
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymar...
v2.0.0
[2.0.0] — 2026-04-20
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
Waymark Changelog
[1.0.1] — 2026-04-20
Fixed
Database & Test Stability
- Optimized database schema initialization for test isolation
- Fixed test assertion drift from v1.0.0 implementation changes
- Improved approval routing mock compatibility
- All 182 tests now passing (92% pass rate)
Changed
- Database lazy-loads on first access (was at module startup)
- Dependencies synchronized with latest patches
Confirmed Implemented
- ✅ Email notifications (SMTP-based approval notifications)
- ✅ Windows support (macOS, Linux, Windows platforms all supported)
- ✅ Team approval routing (Phase 2)
- ✅ Session-level rollback (Phase 1)
Status
✅ Production-ready patch release
[1.0.0] — 2026-04-19
Added
Session-Level Rollback
- Atomic rollback of entire agent runs
- File restoration from snapshots
- Reversibility validation before executing
Approval Routing & Escalation
- Route pending actions to team members
- Auto-escalate stale approvals
- Team management in dashboard
- Slack notifications
Risk Assessment
- AI-powered risk scoring (0-10 scale)
- Predictive analytics dashboard
- Auto-recommendations
Fixed
- Type safety in approval management
- Test compilation errors
- Documentation links
Status
Test coverage at 91% — see project README for stabilization plan before production use.
[0.10.0] — 2026-04-18
Added
Session-Level Rollback (Phase 1)
- Atomic session-level rollback operations
- File restoration from before_snapshot records
- Reversibility validation
- Dashboard sessions tab
- Comprehensive test coverage
[0.9.0] — 2026-04-16
Added
Approval Management & Escalation
- Team approval routing with condition-based rules
- Escalation management with timeout handling
- Dashboard tabs for approvals, escalations, remediation
Changed
- Enhanced approval request schema
Fixed
- Approval decision logic
- Escalation timeout handling
[0.8.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.7.0] — 2026-04-16
Added
Phase 5: Multi-AI Platform Support (Complete Overhaul)
-
Interactive platform selection in
waymark init- Users choose: Claude (recommended) | GitHub Copilot CLI (experimental) | Both
- Conditional setup: only configure selected platforms
- Platform choices stored in
waymark.config.jsonv2
-
GitHub Copilot CLI support
- Shell wrapper script for automatic CLI interception and logging
- CLI commands appear in dashboard alongside MCP actions
- Non-blocking logging (1-second timeout, never slows user)
-
New documentation
- Platform comparison matrix and roadmap (see docs/README_PLATFORMS.md)
- Setup guide for GitHub Copilot CLI (see docs/COPILOT_CLI.md)
- FAQ with 200+ questions and answers (see docs/FAQ.md)
Complete Architecture Improvements (Phases 1-4)
- Plan mode logging visibility (shows Waymark activity in Claude plan mode)
- Multi-project management (central registry, easy project switching)
- Dashboard optimization (10-50x faster queries, pagination for large datasets)
- Intelligent port lifecycle (automatic release when projects close)
Changed
- Config schema: v1 → v2 (auto-migration, fully backward compatible)
- Init command now interactive (choose your platform)
- Database: Added
sourcecolumn to distinguish CLI vs MCP actions - Dashboard: Unified timeline for all AI agent actions
Fixed
- Auto-migration preserves existing Claude configurations
- Type safety for optional fields in database schema
- Non-blocking logging resilience (works even if Waymark server down)
✅ Production Ready: All 31 todos complete, 100% backward compatible, ready for immediate deployment.
[0.6.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.2] — 2026-04-06
Changed
- Dashboard now shows project name in the header. After running
npx @way_marks/cli start, the dashboard title displays waymark — your-project
instead of a generic "waymark". No configuration required — the name
is derived automatically from the project directory. - New API endpoint
GET /api/projectreturns project metadata
(projectName,port) for UI consumption.
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymark logs — terminal action viewer
with --pending and --blocked filters - waymark status — quick health check
Security
- Re...
v1.0.0
[1.0.0] — 2026-04-18
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.9.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.8.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.7.0] — 2026-04-16
Added
Phase 5: Multi-AI Platform Support (Complete Overhaul)
-
Interactive platform selection in
waymark init- Users choose: Claude (recommended) | GitHub Copilot CLI (experimental) | Both
- Conditional setup: only configure selected platforms
- Platform choices stored in
waymark.config.jsonv2
-
GitHub Copilot CLI support
- Shell wrapper script for automatic CLI interception and logging
- CLI commands appear in dashboard alongside MCP actions
- Non-blocking logging (1-second timeout, never slows user)
-
New documentation
- Platform comparison matrix and roadmap (see docs/README_PLATFORMS.md)
- Setup guide for GitHub Copilot CLI (see docs/COPILOT_CLI.md)
- FAQ with 200+ questions and answers (see docs/FAQ.md)
Complete Architecture Improvements (Phases 1-4)
- Plan mode logging visibility (shows Waymark activity in Claude plan mode)
- Multi-project management (central registry, easy project switching)
- Dashboard optimization (10-50x faster queries, pagination for large datasets)
- Intelligent port lifecycle (automatic release when projects close)
Changed
- Config schema: v1 → v2 (auto-migration, fully backward compatible)
- Init command now interactive (choose your platform)
- Database: Added
sourcecolumn to distinguish CLI vs MCP actions - Dashboard: Unified timeline for all AI agent actions
Fixed
- Auto-migration preserves existing Claude configurations
- Type safety for optional fields in database schema
- Non-blocking logging resilience (works even if Waymark server down)
✅ Production Ready: All 31 todos complete, 100% backward compatible, ready for immediate deployment.
[0.6.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
Changelog
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.2] — 2026-04-06
Changed
- Dashboard now shows project name in the header. After running
npx @way_marks/cli start, the dashboard title displays waymark — your-project
instead of a generic "waymark". No configuration required — the name
is derived automatically from the project directory. - New API endpoint
GET /api/projectreturns project metadata
(projectName,port) for UI consumption.
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymark logs — terminal action viewer
with --pending and --blocked filters - waymark status — quick health check
Security
- Regex-based command blocking catches
pipe-to-shell attacks (curl | bash variants) - Default deny for paths not in allowedPaths
- blockedPaths take priority over allowedPaths
- Pending actions never execute without
explicit human approval - Double-approve and double-rollback guards
v0.9.0
[0.9.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.8.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.7.0] — 2026-04-16
Added
Phase 5: Multi-AI Platform Support (Complete Overhaul)
-
Interactive platform selection in
waymark init- Users choose: Claude (recommended) | GitHub Copilot CLI (experimental) | Both
- Conditional setup: only configure selected platforms
- Platform choices stored in
waymark.config.jsonv2
-
GitHub Copilot CLI support
- Shell wrapper script for automatic CLI interception and logging
- CLI commands appear in dashboard alongside MCP actions
- Non-blocking logging (1-second timeout, never slows user)
-
New documentation
- Platform comparison matrix and roadmap (see docs/README_PLATFORMS.md)
- Setup guide for GitHub Copilot CLI (see docs/COPILOT_CLI.md)
- FAQ with 200+ questions and answers (see docs/FAQ.md)
Complete Architecture Improvements (Phases 1-4)
- Plan mode logging visibility (shows Waymark activity in Claude plan mode)
- Multi-project management (central registry, easy project switching)
- Dashboard optimization (10-50x faster queries, pagination for large datasets)
- Intelligent port lifecycle (automatic release when projects close)
Changed
- Config schema: v1 → v2 (auto-migration, fully backward compatible)
- Init command now interactive (choose your platform)
- Database: Added
sourcecolumn to distinguish CLI vs MCP actions - Dashboard: Unified timeline for all AI agent actions
Fixed
- Auto-migration preserves existing Claude configurations
- Type safety for optional fields in database schema
- Non-blocking logging resilience (works even if Waymark server down)
✅ Production Ready: All 31 todos complete, 100% backward compatible, ready for immediate deployment.
[0.6.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
Changelog
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.2] — 2026-04-06
Changed
- Dashboard now shows project name in the header. After running
npx @way_marks/cli start, the dashboard title displays waymark — your-project
instead of a generic "waymark". No configuration required — the name
is derived automatically from the project directory. - New API endpoint
GET /api/projectreturns project metadata
(projectName,port) for UI consumption.
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymark logs — terminal action viewer
with --pending and --blocked filters - waymark status — quick health check
Security
- Regex-based command blocking catches
pipe-to-shell attacks (curl | bash variants) - Default deny for paths not in allowedPaths
- blockedPaths take priority over allowedPaths
- Pending actions never execute without
explicit human approval - Double-approve and double-rollback guards
v0.8.0
[0.8.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
[0.7.0] — 2026-04-16
Added
Phase 5: Multi-AI Platform Support (Complete Overhaul)
-
Interactive platform selection in
waymark init- Users choose: Claude (recommended) | GitHub Copilot CLI (experimental) | Both
- Conditional setup: only configure selected platforms
- Platform choices stored in
waymark.config.jsonv2
-
GitHub Copilot CLI support
- Shell wrapper script for automatic CLI interception and logging
- CLI commands appear in dashboard alongside MCP actions
- Non-blocking logging (1-second timeout, never slows user)
-
New documentation
- Platform comparison matrix and roadmap (see README_PLATFORMS.md)
- Setup guide for GitHub Copilot CLI (see COPILOT_CLI.md)
- FAQ with 200+ questions and answers (see FAQ.md)
Complete Architecture Improvements (Phases 1-4)
- Plan mode logging visibility (shows Waymark activity in Claude plan mode)
- Multi-project management (central registry, easy project switching)
- Dashboard optimization (10-50x faster queries, pagination for large datasets)
- Intelligent port lifecycle (automatic release when projects close)
Changed
- Config schema: v1 → v2 (auto-migration, fully backward compatible)
- Init command now interactive (choose your platform)
- Database: Added
sourcecolumn to distinguish CLI vs MCP actions - Dashboard: Unified timeline for all AI agent actions
Fixed
- Auto-migration preserves existing Claude configurations
- Type safety for optional fields in database schema
- Non-blocking logging resilience (works even if Waymark server down)
✅ Production Ready: All 31 todos complete, 100% backward compatible, ready for immediate deployment.
[0.6.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
Changelog
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.2] — 2026-04-06
Changed
- Dashboard now shows project name in the header. After running
npx @way_marks/cli start, the dashboard title displays waymark — your-project
instead of a generic "waymark". No configuration required — the name
is derived automatically from the project directory. - New API endpoint
GET /api/projectreturns project metadata
(projectName,port) for UI consumption.
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymark logs — terminal action viewer
with --pending and --blocked filters - waymark status — quick health check
Security
- Regex-based command blocking catches
pipe-to-shell attacks (curl | bash variants) - Default deny for paths not in allowedPaths
- blockedPaths take priority over allowedPaths
- Pending actions never execute without
explicit human approval - Double-approve and double-rollback guards
v0.6.0
[0.6.0] — 2026-04-16
Added
- (Add changes here)
Changed
- (Add changes here)
Fixed
- (Add changes here)
Changelog
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.2] — 2026-04-06
Changed
- Dashboard now shows project name in the header. After running
npx @way_marks/cli start, the dashboard title displays waymark — your-project
instead of a generic "waymark". No configuration required — the name
is derived automatically from the project directory. - New API endpoint
GET /api/projectreturns project metadata
(projectName,port) for UI consumption.
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymark logs — terminal action viewer
with --pending and --blocked filters - waymark status — quick health check
Security
- Regex-based command blocking catches
pipe-to-shell attacks (curl | bash variants) - Default deny for paths not in allowedPaths
- blockedPaths take priority over allowedPaths
- Pending actions never execute without
explicit human approval - Double-approve and double-rollback guards
v0.5.2
Changelog
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.2] — 2026-04-06
Changed
- Dashboard now shows project name in the header. After running
npx @way_marks/cli start, the dashboard title displays waymark — your-project
instead of a generic "waymark". No configuration required — the name
is derived automatically from the project directory. - New API endpoint
GET /api/projectreturns project metadata
(projectName,port) for UI consumption.
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymark logs — terminal action viewer
with --pending and --blocked filters - waymark status — quick health check
Security
- Regex-based command blocking catches
pipe-to-shell attacks (curl | bash variants) - Default deny for paths not in allowedPaths
- blockedPaths take priority over allowedPaths
- Pending actions never execute without
explicit human approval - Double-approve and double-rollback guards
v0.5.1
Changelog
All notable changes to Waymark are documented here.
Format follows Keep a Changelog
Versioning follows Semantic Versioning
[0.5.1] — 2026-04-06
Changed
- README and CHANGELOG updated with deprecation notice and migration
steps for users coming from@shaifulshabuj-waymarkspackages. - No code changes — docs-only patch release.
[0.5.0] — 2026-04-06
⚠️ Package scope renamed in this release.
@shaifulshabuj-waymarks/cliand@shaifulshabuj-waymarks/serverare now
deprecated on npm. Switch to@way_marks/cliand@way_marks/server.
See migration steps below.
Migration from @shaifulshabuj-waymarks
# 1. Uninstall old packages
npm uninstall @shaifulshabuj-waymarks/cli @shaifulshabuj-waymarks/server
# 2. Install new packages
npx @way_marks/cli init
# 3. Restart Claude CodeRe-running init also updates your Claude Desktop MCP config to the new
waymark-${projectName} key format required for multi-project support.
Added
- Multi-project support: Each project now gets its own isolated SQLite database
at.waymark/waymark.db, an auto-selected port (3001–3010), and a named MCP
server entry (waymark-${projectName}) in Claude Desktop config. Multiple
Waymark projects can run simultaneously without conflict. - Port auto-selection:
waymark startprobes ports 3001–3010 and picks the
first available one. Port is stored in.waymark/config.json. - Project status command (
waymark status): Shows project name, root, DB
path, port, dashboard URL, MCP key, and whether the server is currently running.
Changed
- Package scope renamed from
@shaifulshabuj-waymarksto@way_marks.
Install withnpm install @way_marks/serverornpx @way_marks/cli init. - CLAUDE.md template now uses mandatory enforcement language with exact MCP
tool names (mcp__waymark-${projectName}__write_file, etc.) instead of polite
suggestions. Claude Code will enforce Waymark tool usage without ambiguity. - MCP server registration now uses
waymark-${projectName}as the Claude
Desktop config key instead of the generic"waymark". Re-runinitin each
project to register the updated key.
Fixed
waymark initno longer overwrites other projects' MCP entries when registering
a new project — it adds/updates only the current project's key.
Breaking changes
- DB location moved from
data/waymark.dbto.waymark/waymark.db.
Existing databases are not migrated automatically. - MCP key in Claude Desktop config changes. Re-run
npx @way_marks/cli init
in each project after upgrading.
[0.4.0] — 2026-04-04
Fixed
- Security: Approving a pending
write_fileaction now re-checks current policies
before writing. If a policy was tightened after the action was queued, the approval
is rejected with an explanation rather than silently executing. - Security: Actions logged without an explicit policy decision no longer default
toallow. The safe default is nowpending. - Behaviour: Paths listed in
requireApprovalno longer holdread_fileactions
pending. Read operations are idempotent — only writes require approval. - Reliability: Bash command output is now capped at
maxBashOutputBytes
(default 10 000) with a[OUTPUT TRUNCATED]marker appended when the limit
is exceeded. - Compatibility: Node binary detection now uses
process.execPathinstead of
reading NVM alias files. Works correctly with Homebrew, system Node, and any
version manager. - CLI:
waymark logsno longer crashes on rows with malformedinput_payload. - CLI: Date display in
waymark logsis now consistent regardless of whether
the database stores timestamps with a space or aTseparator.
[0.3.0] — 2026-04-04
CLI output fixes
- All command hints in CLI output now show the full
npx @way_marks/cli <cmd>form —
works correctly whether Waymark is installed
globally or invoked via npx
[0.2.0] — 2026-04-04
Background daemon mode
waymark startnow runs servers in the background and returns to prompt immediately — closing the terminal no longer stops Waymark- Added
waymark stopcommand for clean shutdown waymark statusnow detects crashed servers and cleans up stale PID files automatically
[0.1.0] — 2026-04-04
First public release
Core Features
- MCP server for native Claude Code integration
- Intercepts write_file, read_file, and bash actions
in real time before execution - Policy engine with four control types:
allowedPaths, blockedPaths,
blockedCommands, requireApproval - Regex pattern support in blockedCommands
for flexible command matching - Rollback any write_file action to its
previous state with one click - Approve or reject pending actions
from the web dashboard - Slack webhook notifications for
pending approval actions - SQLite action ledger — every action logged
with full context and agent reasoning
Developer Experience
- npx @way_marks/cli init — one command project setup
- Auto-generates waymark.config.json
- Auto-generates CLAUDE.md for always-on
Claude Code activation - Auto-registers MCP server in Claude
desktop config - waymark start — launches dashboard
and MCP server together - waymark logs — terminal action viewer
with --pending and --blocked filters - waymark status — quick health check
Security
- Regex-based command blocking catches
pipe-to-shell attacks (curl | bash variants) - Default deny for paths not in allowedPaths
- blockedPaths take priority over allowedPaths
- Pending actions never execute without
explicit human approval - Double-approve and double-rollback guards