docs: remove references to unimplemented AlgorithmTab.hook.ts#968
Open
HyggeHacker wants to merge 46 commits intodanielmiessler:mainfrom
Open
docs: remove references to unimplemented AlgorithmTab.hook.ts#968HyggeHacker wants to merge 46 commits intodanielmiessler:mainfrom
HyggeHacker wants to merge 46 commits intodanielmiessler:mainfrom
Conversation
Statusline reads .pai.algorithmVersion from settings.json but nothing ever wrote it, causing ALG:— in the statusline. Add getAlgorithmVersion() to UpdateCounts.ts that extracts the version from CLAUDE.md (canonical source) and writes it alongside counts at session end. Ref: danielmiessler#819 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… ~/PAI Updated README-UPDATE-WORKFLOW.md and update-pai.sh to reflect correct repository location at ~/PAI instead of ~/Tools/Personal_AI_Infrastructure. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Implements automatic loading of vault-specific context from VAULT.md files,
enabling JAM to maintain client/project-specific knowledge across sessions.
Changes:
- LoadContext.hook.ts: Add vault discovery and auto-loading
- CORE SKILL.md: Document vault initialization pattern
- vault-examples/: Add example VAULT.md templates for Azure pentests and general clients
How it works:
- If VAULT.md exists in current directory, it's injected into context at session start
- Supplements global CORE identity (never replaces it)
- Completely free-form markdown - no required structure
- Supports natural conversation initialization ("Start an Azure pentest for...")
Use cases:
- Per-client penetration testing engagements
- Project-specific context and findings
- Multi-client workflow organization in Obsidian vaults
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
New pack: pai-azure-pentest-skill Skills included: - azure-pentest-init: Project initialization and methodology - azure-enum: Azure CLI enumeration commands - azure-findings: Finding analysis and documentation - roadtools-helper: ROADtools Azure AD analysis - azurehound-helper: AzureHound + BloodHound attack paths - prowler-azure: Azure CIS compliance (169+ checks) - scoutsuite-azure: Quick Azure configuration audit - Monkey365: Microsoft 365 security (Exchange, SharePoint, Teams) - Maester: Entra ID testing with MITRE ATT&CK mapping (280+ tests) Documentation: - AZURE_SKILLS_README.md: Complete skill reference - AZURE_PENTEST_CHEATSHEET.md: Quick reference card Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Back up custom pentest skills as proper PAI Packs in the fork. These were previously only in ~/.claude/skills/ (untracked). - pai-internal-pentest-skill: AD pentest orchestration with 7 scripts, 8 workflows, 13-method domain enumeration, remote Kali deploy/retrieve - pai-external-pentest-skill: External pentest init with 4 scripts, plus bbot-helper for BBOT reconnaissance guidance Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds passive-sniffing.sh that launches Responder (-A analyze mode), mitm6 (--no-ra), Flamingo, and tcpdump in screen/zellij sessions for zero-noise credential capture alongside initial discovery. Updates Phase 0 checklist, directory structure, and differentiates passive (Phase 0) from active (Phase 3) credential attack modes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
PAI's install.ts migrator only preserves personal skills matching
`s.startsWith('_') && s === s.toUpperCase()`. All custom pentest
skills used lowercase-hyphenated names and would be silently dropped
during migration.
Renames across all 3 pack directories:
- azure-pentest-init → _AZURE_PENTEST_INIT (and 8 other azure skills)
- internal-pentest → _INTERNAL_PENTEST
- external-pentest-init → _EXTERNAL_PENTEST_INIT
- bbot-helper → _BBOT_HELPER
Updated: SKILL.md name fields, INSTALL.md/README.md path references.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Concurrent notifications (e.g., multiple hooks firing simultaneously) caused overlapping audio playback. Adds a promise-based queue that serializes all audio output so each message plays completely before the next begins. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Scaffolding for future voice input capability:
- Abstract STT provider interface (Whisper, ElevenLabs, macOS Dictation)
- Dual activation: wake word ("Hey JAM") + global hotkey (Fn+V)
- VoiceInput server stub (port 8889)
- Full pack documentation following PAI template
Not yet functional — stubs and interfaces only.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduces the modular Components/ architecture for SKILL.md generation. Components are numbered .md files assembled by CreateDynamicCore.ts at build time. Includes full Algorithm version history (v0.1 through v0.2.25) and updated README with pack deployment architecture docs and tier-aware sync explanation. - Add 6 CORE Component files (frontmatter, intro, format selection, algorithm, routing) - Add 26 Algorithm version files (v0.1 - v0.3) - Add CreateDynamicCore.ts build tool - Move TranscriptParser.ts from hook-system to core-install pack - Update SKILL.md with v0.2.25 content - Document pack deployment architecture and tier-aware sync in README Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…l pentest skill - Expand MITM6 section in CredentialAttacks.md from 15 to ~80 lines with prerequisites, flag explanations, alternative relay targets (ADCS/SMB/MSSQL), post-exploitation RBCD chain, timing guidance, and troubleshooting - Add Responder.conf relay vs capture mode configuration guidance - Add IPv6 DNS Takeover finding template to PostExploitation.md with remediation steps, MITRE references, and evidence template - Add mitm6 column to validation matrix in PostExploitation.md - Add MITM6 RBCD exploitation path to LateralMovement.md with relay-created machine account workflow and cleanup commands - Update Initialize.md Phase 0 references to include mitm6 --no-ra - Update Responder hash log paths for version compatibility across Kali, pip, and custom installations Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace 9 individual v1.0.0 skills with 3 consolidated v3.1.0 skills: - _AZURE_PENTEST (init + enum + methodology) - _AZURE_ANALYSIS (ROADtools + AzureHound + findings) - _AZURE_COMPLIANCE (Prowler + ScoutSuite + Monkey365 + Maester) Updates: MFA auth, Entra ID terminology, azure-pentest-scripts integration, TokenTacticsV2/GraphRunner/AADInternals/Graphpython/cloud_enum tools. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Pentest methodology skills (azure, internal, external) should not be in a public repository. Moving to HyggeHacker/pentest-packs (private). Removed: - Packs/pai-azure-pentest-skill - Packs/pai-internal-pentest-skill - Packs/pai-external-pentest-skill Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Separate private clone lives inside repo dir but should not be tracked. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
v3.0 upstream dropped Observability entirely. Restoring from v2.5 so it persists in the fork and can be deployed by pai-sync. Includes: Vue.js client, Bun WebSocket server, Swift menubar app, ManageServer.ts CLI tool. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
obs-cmds: Extracts Bash command output from JSONL session transcripts. Supports live streaming, --last N replay, and --session extraction. obs-tui: Live event stream of all tool calls with color-coded output. Supports filtering by tool type, event type, and recent event replay. Also adds robust homedir resolution to server index.ts. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Shared library for hooks to send events to the Observability dashboard server. Fails silently when dashboard is offline. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replaces dark blue/navy/slate/violet/indigo/gold/amber theme colors with Tailwind cyan scale (cyan-200 through cyan-600) for high visibility on dark terminal backgrounds. Functional colors preserved: rating gradient, context bar gradient, EMERALD/ROSE semantic colors, and usage health indicators. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Restored original per-section color themes (violet, sky, purple, indigo, amber, gold). Only the PAI branding header (P/A/I text, STATUSLINE label, LOC/ENV lines) uses cyan for visibility. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
pai now passes --settings pai-settings.json to claude, so PAI hooks and context only load when using the pai command. Running claude directly gives a clean vanilla session. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… dir Defense-in-depth: prevents accidental staging of private data even if pai-sync explicit path arrays are bypassed via manual git add. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fixes 1300 files that had unnecessary executable bit (755) from rsync propagating macOS filesystem permissions. All non-.sh files are now 644. pai-sync push now uses --chmod=F644,D755 to prevent recurrence. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
pai.ts now passes --settings pai-settings.json to claude, ensuring PAI hooks and context load when using the pai command. Also adds the deployable pai-settings.json file so pai-sync can propagate hooks config to all machines. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
QA findings: - --settings is an OVERLAY (merges on top of settings.json) - Previous pai-settings.json duplicated all config, would override local settings.json customizations (principal.name, identity, etc.) - Slimmed to hooks + statusLine only (what PAI actually adds) - pai.ts now checks file existence before passing --settings - Warns and falls back gracefully if pai-settings.json missing Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- pai-settings.json: schema URL was json-schema.org (wrong), must be json.schemastore.org/claude-code-settings.json - Banner.ts: version fallback was "2.0" instead of "3.0" - Banner.ts: when settings.json has no counts, now does quick filesystem count instead of showing all zeros Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The two-file overlay approach (settings.json + pai-settings.json) was fundamentally wrong. Created schema errors, missing env vars, identity loss, and cascading failures on MacBook B. New approach: settings.json syncs through pai-private (private repo). One file, one source of truth. pai.ts back to plain "claude" invocation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Hooks import the yaml package. package.json was gitignored as "accidental npm debris" but it's actually required infrastructure. Without it, bun install never runs and all hooks fail on new machines. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Three targeted bug fixes discovered after pai-sync sync on iMac node: - pai.ts: Pass PAI_ACTIVE=1 in spawn env so statusline script activates - Banner.ts: Read algo version from PAI/Algorithm/LATEST (was hardcoded "0.2" fallback), add GetCounts.ts fallback when settings.counts empty - statusline-command.sh: Read algo version from PAI/Algorithm/LATEST file instead of jq from settings (which lacks the field), with jq fallback for backwards compat Root cause: previous pai-sync push with --delete wiped release PAI/ directory when live was incomplete. See POST-SYNC-FIX-REPORT-20260301.md. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
# Conflicts: # README.md
Re-adds the 3 files from commit 9013cd1 that were lost when upstream renamed Releases/v4.0 → v4.0.0 in v4.0.1, causing the merge to drop our fork-specific v4.0 directory from tracking. - Banner.ts: LATEST file read + GetCounts.ts fallback for algo/counts - pai.ts: PAI_ACTIVE env var in spawn config - statusline-command.sh: Algorithm LATEST path fix Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Bug fixes verified present in v4.0.0 (PAI_ACTIVE env, Banner LATEST, statusline algo path). v4.0/ is now redundant after upstream rename. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Vanilla `claude` now skips PAI context injection entirely. Only `pai` (which sets PAI_ACTIVE=1) gets steering rules, DA identity, relationship context, and active work summary. Also delete stale context-base-tokens cache from previous bloated session — was showing 35% based on old calibration. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
PAI header line (P/A/I text, STATUSLINE label, location, time) uses cyan scale for high visibility on dark backgrounds. Per-section colors (violet, sky, purple, indigo, amber, gold) remain unchanged. Restores fix from 6c18655 lost in v4.0→v4.0.0 migration. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…nielmiessler#836, danielmiessler#817, danielmiessler#846) - PR danielmiessler#800: Inference.ts JSON array parsing (dual-candidate strategy) - PR danielmiessler#836: CONTEXT_ROUTING.md dead reference cleanup (75→31 lines) - PR danielmiessler#817: WorldThreatModelHarness $PAI_DIR portability (10 instances) - PR danielmiessler#846: Installer user context migration (copyMissing + migrateUserContext) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
pai-sync now reads this file to determine which Releases/ directory to deploy from, instead of hardcoding the path in shell functions. Prevents stale path breakage when chezmoi lags behind git pulls. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
These skills were in v3.0 but missing from v4.0.0 release. Adding them so pai-sync deploy's new stale skill cleanup doesn't remove them from machines that had them from previous releases. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This reverts commit 7a63c70.
Adds workflow to sync local _* prefixed skills to pai-private repo. Includes skill-to-repo mapping table, clone/diff/commit/push cycle, dry-run mode, and single-skill support. Also merges upstream (danielmiessler/Personal_AI_Infrastructure) — Algorithm v3.7.0, installer fixes, version bumps. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
AlgorithmTab.hook.ts is documented in hooks/README.md and PAI/THEHOOKSYSTEM.md but was never implemented as a standalone hook. Its functionality (updating Kitty tab with Algorithm phase) is already handled by PRDSync.hook.ts, which imports AlgorithmTabPhase and calls setPhaseTab() on every phase transition. This commit removes the phantom references to align docs with the actual hook inventory. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.
Summary
AlgorithmTab.hook.tsreferences fromhooks/README.mdandPAI/THEHOOKSYSTEM.mdPRDSync.hook.ts, which importsAlgorithmTabPhaseand callssetPhaseTab()on every phase transitionChanges
🤖 Generated with Claude Code