Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 71 additions & 0 deletions integrations/github-dkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
{
"$schema": "../schema/integration.schema.json",
"schemaVersion": "0.1.0",
"slug": "github-dkg",
"name": "GitHub Knowledge Ingest for DKG v10",
"description": "Ingests GitHub issues, pull requests, and review comments into DKG v10 Working Memory as Knowledge Assets. Each item becomes one tri-modal asset (markdown + structural triples + embedding); architecture-decision PRs can be promoted to Shared Working Memory for team-wide visibility. Ships as a CLI and a Docker-based GitHub Action that fires on issue / pull_request / pull_request_review events.",
"category": [
"ingestion",
"github",
"working-memory",
"shared-memory",
"engineering",
"provenance"
],
"maintainer": {
"github": "@haroldboom",
"contact": "spangers11@gmail.com"
},
"repo": "https://github.com/haroldboom/github-dkg",
"commit": "2144ed4cbb7fd5bf74239408b93801e0f9a20ea0",
"license": "MIT",
"requiresDkgNodeVersion": ">=10.0.0-rc.1",
"memoryLayers": [
"WM",
"SWM"
],
"v10PrimitivesUsed": [
"ContextGraph",
"Assertion",
"KnowledgeAsset"
],
"publicInterfacesUsed": [
"http-api"
],
"targetAgents": [
"generic-CLI",
"generic-HTTP"
],
"install": {
"kind": "cli",
"package": "github-dkg",
"version": "0.1.5",
"binary": "github-dkg",
"envRequired": [
"DKG_TOKEN",
"DKG_BASE_URL",
"DKG_CONTEXT_GRAPH",
"GITHUB_TOKEN"
],
"usageHint": "Bulk-ingest:\n github-dkg ingest owner/repo\nSingle item:\n github-dkg ingest-one owner/repo 42 --type issue\nSearch:\n github-dkg search \"query\"\nPromote WM→SWM:\n github-dkg promote <ual>\nAll commands accept --context-graph (or read $DKG_CONTEXT_GRAPH). Also ships as a Docker-based GitHub Action: haroldboom/github-dkg@v0.1.5. Create the graph first: github-dkg create-context-graph <name>."
},
"security": {
"networkEgress": [
"api.github.com"
],
"writeAuthority": [
"POST /api/memory/turn",
"POST /api/context-graph/create",
"POST /api/knowledge-assets/{name}/swm/share-async (SHARE, Curator authority; legacy fallback POST /api/assertion/{name}/promote-async)"
],
"credentialsHandled": [
"GITHUB_TOKEN"
],
"notes": "Communicates with the local DKG node (HTTP, port 9200 by default) and the GitHub REST API at api.github.com. Writes Knowledge Assets to Working Memory by default; promotion to Shared Working Memory is always explicit (async knowledge-assets share job on current nodes, legacy route fallback). Credentials come from DKG_TOKEN/GITHUB_TOKEN env vars or explicit parameters; never hardcoded; the GitHub Action defaults to github.token and the example workflow uses a least-privilege permissions block. No postinstall scripts. Published to PyPI via pypa/gh-action-pypi-publish with attestations:true under Trusted Publishing; the publish workflow is gated on the unit-test suite and a tag/version check. 63/63 unit tests pass; CI runs ruff, mypy, and the suite on Python 3.10-3.13. v0.1.5 (2026-07-04, verified against node build 10.0.2): GitHub rate limits raise typed errors with reset times (secondary limits honor Retry-After); bulk ingest streams work and preserves partial results; multi-line comment bodies are indented so authored text cannot spoof attribution lines (prompt-injection hardening) and truncation is marked in the stored asset; action.yml outputs fixed for Docker actions; the entrypoint validates all required env vars up front; the Docker image runs as a non-root user; explicit memoryLayers on every search. Re-verified 2026-07-28 on node 10.0.9: 63/63 unit tests green against the published wheel in a fresh venv; memory/turn, memory/search, query, and the knowledge-assets promote path validated live. 10.0.7+ operator note: nodes no longer auto-create sub-graphs on write — pre-register via POST /api/sub-graph/create; transparent auto-registration is queued for the next release."
},
"trustTier": "community",
"designBrief": "https://github.com/haroldboom/github-dkg/blob/master/DESIGN_BRIEF.md",
"demo": "https://youtu.be/pfICj9VR1gE",
"promotionPath": "Issues, PRs, and review comments land in Working Memory as Knowledge Assets at ingest time. The integration exposes an explicit `promote` operation (CLI: `github-dkg promote <ual>`; programmatic: `GitHubDKGIngestor.promote(turn_uri)`) that calls POST /api/assertion/{name}/promote to graduate selected assets to Shared Working Memory — `examples/workflow.yml` shows the canonical gate (closed+merged PR + label `architecture-decision`). Verified Memory promotion is intentionally not automated by the package; a downstream Curator step (POST /api/shared-memory/publish) anchors team-validated decisions on-chain when warranted, at which point those assets become consumable by context oracles for downstream agents reasoning about the project's history.",
"fitNotes": "Targets the auto-research direction by closing the loop on engineering tacit knowledge: issue threads, PR descriptions, and review comments — the highest-signal substrate inside any software organisation — become first-class, attributable, queryable assets on the DKG. Pairs naturally with langchain-dkg (sister Round 1 submission, also under the haroldboom account): github-dkg writes the substrate, langchain-dkg gives any LangChain agent persistent memory backed by it."
}