Skip to content
Agentmart
Submit a tool

knowledge_graph_pipeline

Change the knowledge-graph extractor and publish the result across all seven pillar repos and the rvahacks site.

Skill by built-environment

IndexedApache-2.0
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/hack4rva-knowledge-graph-pipeline

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Change the knowledge-graph extractor and publish the result across all seven pillar repos and the rvahacks site. Use when editing anything under knowledge-graph/extraction/, when graph data needs regenerating, when running the release check, or when asked to publish or deploy graph changes to rvahacks.org.

Use cases: devops, data, writing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/knowledge-graph-pipeline

What's inside

Skill name
knowledge_graph_pipeline
Description
Change the knowledge-graph extractor and publish the result across all seven pillar repos and the rvahacks site. Use when editing anything under knowledge-graph/extraction/, when graph data needs regenerating, when running the release check, or when asked to publish or deploy graph changes to rvahacks.org.
License
Apache-2.0
Metadata
author: built-environment
Instructions
174 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Agent Skills spec issues

  • name: only lowercase letters, digits and single hyphens allowed
  • files: referenced but missing: scripts/canonical-entities.json

Files (1)

  • SKILL.md

SKILL.md (first lines)

> **Note:** This research was generated using AI assistance (Claude + Parallel.ai) with human expert review. See [methodology](../../docs/methodology.md) for details.

# Knowledge Graph Pipeline

One extractor feeds eight graphs: seven pillars plus the merged `richmond`
graph, all served by one explorer bundle on rvahacks.org. A change to a parser
is therefore never a one-repo change. This is the order that works, and the
traps that cost time when skipped.

To run the explorer locally or port it to a new pillar, use
`run_knowledge_graph` instead. This skill is about changing and shipping it.

## Repo layout

| What | Where |
|---|---|
| Canonical extractor | `pillar-thriving-built-environment/knowledge-graph/extraction/` |
| Per-pillar copy | the same path in each of the other six pillar repos |
| Generated data | `<pillar>/knowledge-graph/data/` (committed) |
| Site + pipeline scripts | `rvahacks/scripts/` |
| Data the site serves | `rvahacks/public/knowledge-graph/data/<pillar>/` |

The parsers are **byte-identical across all seven repos**. Edit the Built
Environment copy, then copy it out. Never edit a pillar copy directly — the next
sync silently reverts it.

## Order of operations

Copy this checklist and work down it. Steps 3 and 5 are the ones people skip.

```
- [ ] 1. Edit the canonical parser in Built Environment
- [ ] 2. Copy to the other six repos; confirm shas match
- [ ] 3. Export project names (writes INTO the pillar repos, so before extract)
- [ ] 4. Re-extract all seven; run the test suites
- [ ] 5. Sync, promote aliases, merge, regenerate stats, rebuild explorer
- [ ] 6. Build the site; run the release check against a preview server
- [ ] 7. Commit and push all eight repos
- [ ] 8. Publish manually in Lovable — pushing to GitHub does not deploy
```

### 1–2. Edit once, copy out, verify

```bash
cd pillar-repos
SRC=pillar-thriving-built-environment/knowledge-graph/extraction/parsers/<file>.js
for p in pillar-thriving-neighborhoods pillar-thriving-families \
         pillar-city-storytelling pillar-thriving-inclusive-communities \
         pillar-thriving-economy pillar-thriving-city-hall; do
  cp "$SRC" "$p/knowledge-graph/extraction/parsers/$(basename $SRC)"
done
for p in pillar-repos/pillar-*; do shasum -a1 "$p/knowledge-graph/extraction/parsers/$(basename $SRC)"; done
```

All seven hashes must match before going further.

### 3. Project names, before extraction

Display names for the demo projects live in `rvahacks/src/data/ideas.ts` and
`idea-content.ts` and nowhere else. `kg:names` exports them into each pillar
repo as `post-event-research/project-names.json`, which the extractor reads.

```bash
cd rvahacks && npm run kg:names
```

It reports `named/total` per repo. Anything unnamed falls back to rendering the
directory slug, which is worth fixing rather than shipping — see
`graph_entity_naming`.

### 4. Re-extract and test

```bash
cd pillar-repos
for p in pillar-*; do (cd "$p/knowledge-graph" && node scripts/extract.js); done
for p in pillar-*; do (cd "$p/knowledge-graph" && npx vitest run); done
```

Read the extract warnings; they are the early signal. `[demote] N sentence-shaped
Problem/Need nodes moved to the evidence layer` is normal and healthy — those
findings land in `data/evidence.json` as `ev:` records with provenance, not lost.

### 5. Through the site pipeline

```bash
cd rvahacks
npm run kg:sync                     # pillar data -> public/knowledge-graph/data/
node scripts/promote-aliases.mjs    # NOT in kg:refresh; run it before merging
npm run kg:merge                    # builds the richmond graph
npm run kg:stats                    # regenerates src/data/corpusStats.generated.ts
npm run kg:app                      # rebuilds the explorer bundle
```

`npm run kg:refresh` chains sync → merge → stats → app, but **omits
promote-aliases**. Run that separately when entity merging matters.

Every published figure comes from `corpusStats.generated.ts`. Never hand-edit a
count into `civicInventory.ts` or a page — it will drift the next time anyone
re-extracts. Facts reference stats by `metric:` key.

### 6. Release check

The check drives a real browser against a real preview server, so the server has
to already be up:

```bash
cd rvahacks && npm run build
lsof -ti:4173 | xargs kill -9 2>/dev/null   # clear a stale holder
npm run preview                              # start as a true background job
npm run release-check
```

Two traps here, both of which produce a confusing all-red run:

- **`npm run preview` dies with its subshell.** Backgrounding it with `&` inside
  a compound command kills it the moment the command returns, and every check
  fails `ERR_CONNECTION_REFUSED`. Start it as its own long-running background
  process and leave it running.
- **Port 4173 is often still held** by a previous run. Kill it first.

From hack4rva/pillar-thriving-built-environment, Apache-2.0.

Signals

Stars
0
Forks
1
Open issues
0
Last commit (this folder)
Aug 3, 2026 (2 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
Apache-2.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from built-environment

Cite this page

knowledge_graph_pipeline skill. Agent Mart. https://agentmart.dev/skills/hack4rva-knowledge-graph-pipeline (last updated 2026-10-24)