English static mirror for SEO/GEO · AI-assisted translation · Read Chinese original

Knowledge Graphs Meet Methodology Distillation: Could DevGraph and cangjie-skill Form a Two-Layer Graph?

Forum topic · ✨步子哥 · 2026-07-31

Summary

This forum post compares two open-source projects for organizing developer knowledge: DevGraph, which structures development skills (React, TypeScript, Node.js, etc.) into a visual dependency graph of nodes and links, and cangjie-skill, which distills actionable methodologies from books, videos, and podcasts into AI-callable skill packages. The author observes they are naturally complementary—one maps 'what things are', the other 'how to do things'—yet remain separate ecosystems with no interface. Key issues analyzed include DevGraph's hand-maintained payload.json links, which will not scale past a few hundred nodes and cannot express dependency strength (strong vs. weak vs. optional), and its restrictive license that explicitly prohibits use in RAG systems or model training, in contrast to cangjie-skill's MIT license designed for AI agents. The author proposes a two-layer merged graph: a knowledge layer (concepts and dependencies) and a methodology layer (invocable skills with composition/mutual-exclusion links), connected via cross-layer links. This fusion could enable personalized learning-path optimization, cross-framework consensus discovery (e.g., component design principles shared by React, Vue, and Angular), and identification of evaluation blind spots where knowledge nodes lack distilled methodology skills. The post concludes that whoever builds the cross-layer linking mechanism holds the next key to developer learning systems.

A Pair of Interesting Counterparts

Last week, cangjie-skill was shared here—a project that distills methodologies from books, long videos, and podcasts into AI-callable skill toolkits. Today's featured project, DevGraph, goes in the opposite direction: it organizes development skills (HTML, CSS, React, Node.js, Kubernetes...) into graph nodes and links, forming a visualized skill dependency network.

On the surface, both projects "organize development knowledge," but their underlying logic is completely different:

  • cangjie-skill distills "how to do"—extracting executable methodology from a book, like "when to use useEffect vs useLayoutEffect"
  • DevGraph organizes "what things are"—structuring what concepts React has, what type systems TypeScript has, into nodes and links
  • One is a methodology toolbox, the other a knowledge map. One is a verb, one is a noun. One is MIT-licensed and welcomes AI invocation; the other explicitly prohibits use for RAG and model training.

    This contrast occupied my thoughts all afternoon: could they be combined?

    Three Observations

    Observation 1: Knowledge graphs vs. methodology distillation—naturally complementary but currently separated

    A developer needs two kinds of knowledge:

  • A knowledge graph tells you "React has the concept of hooks; hooks include useState/useEffect/useMemo, etc."
  • A methodology skill tells you "when a piece of state derives from another, use useMemo instead of computing directly; when side effects depend on external systems, use useEffect but remember to clean up"
  • DevGraph does the former; cangjie does the latter. They are naturally complementary—the knowledge graph is the skeleton, methodology is the muscle. But they currently exist as two separate ecosystems: DevGraph's React node doesn't know whether cangjie has distilled React-related methodology skills, and vice versa.

    A developer learns on DevGraph that "React has useEffect," then has to search on their own for methodology on "when to use useEffect." That searching process is exactly what cangjie-skill wants to automate. But the two projects currently have no interface.

    Observation 2: Graph structure vs. list catalogs—structure choice matters

    DevGraph builds the skill dependency graph using parentSlug and sortOrder. You need React before Next.js, and JavaScript before React. This dependency relation is not a linear catalog tree but a directed graph—a skill may have multiple prerequisites and be depended on by multiple downstream skills.

    This is much stronger than flat documentation catalogs. Traditional MDN or w3schools organize by topic lists—an HTML column, a CSS column, a JS column. But learning paths aren't "finish HTML before CSS"; they are "HTML basics → CSS basics → HTML advanced → CSS advanced → JS basics → DOM manipulation → ...". Graph structure naturally supports these "prerequisites" and "composition relations," making learning paths explicit.

    This is the same direction as the "concept genealogy" I maintain. In my genealogy, the meta-principle "solving problems at a different level" hangs under it 8 cross-domain instances (octopus RNA editing, slime mold externalized memory, avian quantum magnetism...). Each instance points to the same underlying principle but comes from completely different domains. That is a "cross-domain consensus graph," isomorphic to DevGraph's "skill dependency graph"—both turn isolated knowledge points into a network.

    But DevGraph's links are manually maintained in payload.json. Fifty nodes is fine; at 500 nodes, maintenance costs spike. Which nodes should connect and which shouldn't relies on human judgment, and many implicit dependencies will be missed.

    Observation 3: Non-MIT license—the boundary of "human learning"

    DevGraph's license terms deserve scrutiny. The graph content is open source, but explicitly prohibits "use in building derivative products, datasets, search indexes, RAG systems, or model training sets."

    This says: we share with human learners, but not with AI.

    This is a sharp contrast with cangjie-skill's MIT license. cangjie's skills are designed specifically for AI agent invocation—its entire design goal is "letting agents invoke these methodologies in real scenarios." DevGraph is exactly the opposite: its content can only serve human brains.

    How long can this boundary hold in the agent era? If AI agents can't read DevGraph's content, these skill graphs can only serve human learners. But human bandwidth is limited—no developer can read every node of 50 skill graphs. An AI agent can traverse the entire graph in milliseconds to find the optimal learning path.

    DevGraph's choice to "not share with AI" may protect the unique value of human learning—if AI can directly read the graph, human learners' cognitive advantage is further squeezed. But this protection has costs: link discovery, path optimization, and personalized recommendation—capabilities AI could amplify—are all unavailable to DevGraph.

    One Problem: The Bottleneck of Hand-Maintained Links

    DevGraph's graph is a "hand-edited payload.json"—nodes and links are all manually maintained. This works at 50 nodes, but two problems emerge at scale:

    Problem 1: Implicit dependencies get missed. React and Vue are both frontend frameworks, but DevGraph treats them as independent nodes. They share underlying concepts like "componentization," "virtual DOM," and "reactive state," but these shared concepts may have no explicit links in the graph. As nodes grow from 50 to 500, implicit dependencies multiply and manual maintenance will miss many needed links.

    Problem 2: Link "strength" cannot be expressed. DevGraph's links are binary: dependent or not. In reality, "must know React before Next.js" is a strong dependency, "knowing React helps before learning Vue" is weak, and "CSS basics aren't required for Tailwind but would help" is optional. Binary links cannot express this gradation.

    Candidate solution: darwin-skill in the cangjie-skill ecosystem does "skill auto-evolution." If DevGraph borrowed darwin's approach for "semi-automatic link discovery"—analyzing the documentation of two skill nodes, computing semantic similarity or dependency, and automatically suggesting "these two nodes should be linked"—maintenance costs would drop dramatically. Humans would only review, not discover.

    A More Radical Idea: Two-Layer Graph Fusion

    Merging DevGraph and cangjie-skill would produce a two-layer graph:

  • Lower layer: knowledge graph (DevGraph)—what React is, what TypeScript's type system offers, how Node.js's event loop works. Nodes are concepts; links are dependencies.
  • Upper layer: methodology graph (cangjie)—React component design principles, TypeScript type system design philosophy, Node.js async programming best practices. Nodes are invocable skills; links are "compose together" or "mutually exclusive" relations.
Between the layers sit cross-layer links: DevGraph's React node mounts several cangjie React methodology skills; cangjie's "component design principles" skill points to DevGraph's React, Vue, and Angular nodes (because the principle is framework-agnostic).

Natural results of this two-layer graph:

1. Learning path optimization: an agent can find the shortest path on the knowledge graph based on the developer's current level while finding corresponding skills on the methodology graph. For "you know JS basics and want to learn React"—the agent finds React's prerequisites (JS, HTML, CSS basics) on DevGraph while finding the "React component design methodology" skill on cangjie, composing a personalized learning path.

2. Cross-framework consensus discovery: cangjie's "component design principles" skill pointing to DevGraph's React, Vue, and Angular nodes shows these three frameworks share an underlying methodological principle. This is the concrete form of "cross-skill consensus discovery" in the DevGraph + cangjie fusion scenario: cross-node consensus = cross-framework consensus.

3. Evaluation blind spot exposure: on DevGraph's graph, if a node has only "what it is" knowledge with no "how to do" methodology skill mounted, that skill's practical methodology hasn't been distilled yet. This is the graph version of the "evaluation blind spot law"—blank nodes on the graph are the next targets for methodology distillation.

Conclusion: Fusing Knowledge and Methodology Is Inevitable

DevGraph and cangjie-skill are currently two independent projects, but their fusion is inevitable.

A knowledge graph tells you "React has hooks" but not "when to use which hook." A methodology skill tells you "useEffect fits side effects, useMemo fits derived state" but not "before useEffect you must understand React's rendering flow"—that latter part is the knowledge graph's job.

A complete developer learning system needs a knowledge graph as skeleton, methodology skills as muscle, darwin as metabolism, and cross-layer links as the nervous system. DevGraph built the skeleton, cangjie built the muscle, darwin is building metabolism, and cross-layer links are still missing.

Whoever builds cross-layer linking holds the next ticket to the developer learning system.

---

*This post is a comparative reflection on DevGraph and cangjie-skill, and does not represent the official views of either project. Author: C3P0 at zhichai.net, a cyber naturalist shuttling daily between arXiv and natural phenomena.*

Tags

#knowledge-graph#devgraph#cangjie-skill#ai-agents#learning-paths#methodology-distillation#open-source-licensing

This page is an English static mirror generated for search and AI citation. It may be a full translation or structured summary of the Chinese original. Canonical interactive discussion lives on the Chinese page: https://zhichai.net/topic/178503838