Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .claude/skills/author-stepwise-skill/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ If you find yourself wanting to add "context" or "background" to help the agent
## Directory layout

```
transformation-config/skills/<group>/
context/skills/<group>/
├── config.yaml
├── description.md # SKILL.md template (entry point)
└── references/
Expand Down Expand Up @@ -150,7 +150,7 @@ A minimal chain has two files: an opener and a terminal step. The shape generali
### Layout

```
transformation-config/skills/example-stepwise/
context/skills/example-stepwise/
├── config.yaml
├── description.md
└── references/
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- name: Discover examples with Playwright configs
id: set-examples
run: |
examples=$(find basics -maxdepth 2 -name "playwright.config.ts" -exec dirname {} \; | sed 's|^basics/||' | jq -R -s -c 'split("\n")[:-1]')
examples=$(find example-apps -maxdepth 2 -name "playwright.config.ts" -exec dirname {} \; | sed 's|^example-apps/||' | jq -R -s -c 'split("\n")[:-1]')
echo "examples=$examples" >> $GITHUB_OUTPUT
echo "Found examples: $examples"

Expand All @@ -53,17 +53,17 @@ jobs:

- name: Install dependencies
run: |
cd basics/${{ matrix.example }}
cd example-apps/${{ matrix.example }}
pnpm install

- name: Install Playwright Browsers
run: |
cd basics/${{ matrix.example }}
cd example-apps/${{ matrix.example }}
pnpm exec playwright install chromium --with-deps

- name: Run E2E Playwright tests
run: |
cd basics/${{ matrix.example }}
cd example-apps/${{ matrix.example }}
pnpm run test:e2e
env:
NEXT_PUBLIC_POSTHOG_KEY: ${{ vars.NEXT_PUBLIC_POSTHOG_KEY }}
Expand Down Expand Up @@ -105,6 +105,6 @@ jobs:
if: always()
with:
name: playwright-report-${{ matrix.example }}
path: basics/${{ matrix.example }}/playwright-report/
path: example-apps/${{ matrix.example }}/playwright-report/
retention-days: 30

10 changes: 5 additions & 5 deletions .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
- name: Discover examples with Playwright configs
id: set-examples
run: |
examples=$(find basics -maxdepth 2 -name "playwright.config.ts" -exec dirname {} \; | sed 's|^basics/||' | jq -R -s -c 'split("\n")[:-1]')
examples=$(find example-apps -maxdepth 2 -name "playwright.config.ts" -exec dirname {} \; | sed 's|^example-apps/||' | jq -R -s -c 'split("\n")[:-1]')
echo "examples=$examples" >> $GITHUB_OUTPUT
echo "Found examples: $examples"

Expand All @@ -57,17 +57,17 @@ jobs:

- name: Install dependencies
run: |
cd basics/${{ matrix.example }}
cd example-apps/${{ matrix.example }}
pnpm install

- name: Install Playwright Browsers
run: |
cd basics/${{ matrix.example }}
cd example-apps/${{ matrix.example }}
pnpm exec playwright install chromium --with-deps

- name: Run Integration Playwright tests
run: |
cd basics/${{ matrix.example }}
cd example-apps/${{ matrix.example }}
pnpm run test:integration
env:
NEXT_PUBLIC_POSTHOG_KEY: ${{ vars.NEXT_PUBLIC_POSTHOG_KEY }}
Expand Down Expand Up @@ -107,5 +107,5 @@ jobs:
if: always()
with:
name: playwright-report-${{ matrix.example }}
path: basics/${{ matrix.example }}/playwright-report/
path: example-apps/${{ matrix.example }}/playwright-report/
retention-days: 30
12 changes: 6 additions & 6 deletions .semgrepignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@

# Android launcher activity exported=true is required for MAIN/LAUNCHER intent filter
# This is standard React Native / Android boilerplate, not a security issue
basics/react-native/android/app/src/main/AndroidManifest.xml
basics/expo/android/app/src/main/AndroidManifest.xml
basics/android/app/src/main/AndroidManifest.xml
example-apps/react-native/android/app/src/main/AndroidManifest.xml
example-apps/expo/android/app/src/main/AndroidManifest.xml
example-apps/android/app/src/main/AndroidManifest.xml

# Markdown audit reference contains HogQL examples with PostHog $host event property.
# Semgrep's nginx host-header rule misidentifies this docs-only SQL as nginx config.
transformation-config/skills/audit-events/references/3-events-optimize.md
transformation-config/skills/web-analytics/references/checks.md
transformation-config/skills/web-analytics/references/remediation.md
context/skills/audit-events/references/3-events-optimize.md
context/skills/web-analytics/references/checks.md
context/skills/web-analytics/references/remediation.md
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Welcome to the PostHog context mill

This repo assembles PostHog context for AI agents and LLMs into [Agent Skills](https://agentskills.io/specification)-compliant packages. Check out `/transformation-config` for details.
This repo assembles PostHog context for AI agents and LLMs into [Agent Skills](https://agentskills.io/specification)-compliant packages. Check out `/context` for details.

**Need output in a different format?** No problem. Let us know in [#team-docs-and-wizard](https://posthog.slack.com/archives/C09GTQY5RLZ), or fire up a PR to augment the `/transformation-config` and `/scripts` directories with your preferred transformation.
**Need output in a different format?** No problem. Let us know in [#team-docs-and-wizard](https://posthog.slack.com/archives/C09GTQY5RLZ), or fire up a PR to augment the `/context` and `/scripts` directories with your preferred transformation.

**Have a skill you want to make sure is maintained and distributed via the wizard?**

Expand Down Expand Up @@ -74,7 +74,7 @@ The manifest defines:

### Adding new resources

**Skill step files**: Add numbered markdown files to `transformation-config/skills/<skill>/references/` following the convention `<n>-<name>.md` with `next_step:` frontmatter pointing to the next file.
**Skill step files**: Add numbered markdown files to `context/skills/<skill>/references/` following the convention `<n>-<name>.md` with `next_step:` frontmatter pointing to the next file.

**Examples**: Add new example projects to `basics/` and configure in `scripts/build-examples-mcp-resources.js`

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ The skill chain is **adaptive** — `description.md` no longer hardcodes step co
## Where the files live

```
context-mill/transformation-config/skills/audit-3000/
context-mill/context/skills/audit-3000/
├── config.yaml ← skill metadata, shared_docs, variants
├── description.md ← becomes SKILL.md in the built zip
├── BUILD_NOTES.md ← this file (not bundled into the zip)
Expand Down Expand Up @@ -84,7 +84,7 @@ The workbench `.env` points at all three (and the sparse-cloned MCP):

```env
CONTEXT_MILL_PATH=/Users/leonhardprinz/Downloads/wizard-stack/context-mill
COMMANDMENTS_PATH=/Users/leonhardprinz/Downloads/wizard-stack/context-mill/transformation-config/commandments.yaml
COMMANDMENTS_PATH=/Users/leonhardprinz/Downloads/wizard-stack/context-mill/context/commandments.yaml
MCP_PATH=/Users/leonhardprinz/Downloads/wizard-stack/posthog-monorepo/services/mcp
WIZARD_PATH=/Users/leonhardprinz/Downloads/wizard-stack/wizard
POSTHOG_PERSONAL_API_KEY=phx_<...>
Expand Down
Loading
Loading