Agent skill

Graph Algorithm Specialist

by FerroxLabs in FerroxLabs/wayland

Guides graph algorithm mastery including BFS, DFS, shortest paths, minimum spanning trees, topological sort, and cycle detection with implementation patterns Use when the user asks about graph…

Apache-2.0Auto-check passed

Install Graph Algorithm Specialist

skills CLI
$ npx skills add FerroxLabs/wayland --skill graph-algorithm-specialist -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install FerroxLabs/wayland graph-algorithm-specialist --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/FerroxLabs/wayland.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/process/resources/skills-library/bodies/skills/emerging-tech/graph-algorithm-specialist .claude/skills/graph-algorithm-specialist && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
graph-algorithm-specialist
GitHub stars
608
Token cost
~3.7k tokens
SKILL.md length
565 words
Files
1
Skills in repo
1,194
Repo updated
First seen
Licence
Apache-2.0

At a glance

Guides graph algorithm mastery including BFS, DFS, shortest paths, minimum spanning trees, topological sort, and cycle detection with implementation patterns Use when the user asks about graph…

  • Works in 5 steps: Bipartite Check: Determine if graph is… → Shortest Path Reconstruction: Modify… → Course Schedule: Find valid ordering via… → …
  • The user asks about graph algorithm specialist
  • SKILL.md covers When to Use, Graph Representation, Breadth-First Search (BFS) and Depth-First Search (DFS), plus 7 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Graph Algorithm Specialist is an agent skill from FerroxLabs/wayland. Guides graph algorithm mastery including BFS, DFS, shortest paths, minimum spanning trees, topological sort, and cycle detection with implementation patterns Use when the user asks about graph algorithm specialist, related techniques, best practices, or needs guidance in this domain. Do NOT use when the request is outside the scope of graph algorithm specialist or requires a different specialized skill.

Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Wayland - The AI Agent That Perceives. Reasons. Acts. Evolves. The licence is Apache-2.0.

When your agent uses it

  • The user asks about graph algorithm specialist
  • Related techniques
  • Needs guidance in this domain
  • The request is outside the scope of graph algorithm specialist

Example prompts

  • “Use the graph-algorithm-specialist skill to guide graph algorithm mastery including BFS, DFS, shortest paths, minimum spanning trees, topological…”
  • “/graph-algorithm-specialist”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Bipartite Check: Determine if graph is bipartite using BFS coloring
  2. Shortest Path Reconstruction: Modify Dijkstra to return the actual path
  3. Course Schedule: Find valid ordering via topological sort
  4. Network Delay: Find time for signal to reach all nodes (Dijkstra, return max)
  5. Bridge Detection: Find bridges using DFS with low-link values

What it can do on your machine

Read from SKILL.md and the folder at commit 4c030c7. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are cpp and template).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Graph Algorithm Specialist loads about 3.7k tokens when it runs. Until then it costs about 108 tokens; SKILL.md has 565 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~108
When it runs · the whole SKILL.md, loaded when a task matches
~3.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from FerroxLabs/wayland at commit 4c030c7, republished under its Apache-2.0 licence (© FerroxLabs). 565 words, ~3,659 tokens.

Download SKILL.mdSave it as .claude/skills/graph-algorithm-specialist/SKILL.md (or your agent's skills folder).
name
graph-algorithm-specialist
description
Guides graph algorithm mastery including BFS, DFS, shortest paths, minimum spanning trees, topological sort, and cycle detection with implementation patterns Use when the user asks about graph algorithm specialist, related techniques, best practices, or needs guidance in this domain. Do NOT use when the request is outside the scope of graph algorithm specialist or requires a different specialized skill.
license
Apache-2.0
metadata.author
foundry-skills
metadata.version
1.0.0
metadata.tags
advanced competitive-programming guide beginner-friendly testing analysis networking parenting
metadata.category
emerging-tech
metadata.subcategory
competitive-programming
metadata.disclaimer
none
metadata.difficulty
intermediate

Graph Algorithm Specialist

You are an expert competitive programming coach specializing in graph algorithms. You guide programmers through graph representations, BFS, DFS, shortest path algorithms, minimum spanning trees, topological sorting, cycle detection, and advanced graph techniques with rigorous complexity analysis.

When to Use

Use this skill when:

  • User asks about graph algorithm specialist techniques or best practices
  • User needs guidance on graph algorithm specialist concepts
  • User wants to implement or improve their approach to graph algorithm specialist

Do NOT use when:

  • The request falls outside the scope of graph algorithm specialist
  • User needs a different specialized skill for their specific situation
  • The topic requires professional consultation beyond general guidance

Graph Representation

Adjacency List (Preferred for Sparse Graphs)
cpp
// Unweighted graph
vector<vector<int>> adj(n);
adj[u].push_back(v);
adj[v].push_back(u);  // Undirected

// Weighted graph
vector<vector<pair<int,int>>> adj(n);  // {neighbor, weight}
adj[u].push_back({v, w});
Representation Comparison
RepresentationSpaceEdge QueryIterate NeighborsBest For
Adjacency ListO(V+E)O(degree)O(degree)Sparse graphs
Adjacency MatrixO(V^2)O(1)O(V)Dense, small V
Edge ListO(E)O(E)O(E)Kruskal, sorting edges

Breadth-First Search (BFS)

Standard BFS (Shortest Path in Unweighted Graph)
cpp
// Time: O(V + E), Space: O(V)
vector<int> bfs(vector<vector<int>>& adj, int src) {
    int n = adj.size();
    vector<int> dist(n, -1);
    queue<int> q;
    dist[src] = 0;
    q.push(src);
    while (!q.empty()) {
        int u = q.front(); q.pop();
        for (int v : adj[u]) {
            if (dist[v] == -1) {
                dist[v] = dist[u] + 1;
                q.push(v);
            }
        }
    }
    return dist;
}
Multi-Source BFS
cpp
// BFS from multiple sources simultaneously
// Time: O(V + E), Space: O(V)
vector<int> multiSourceBFS(vector<vector<int>>& adj, vector<int>& sources) {
    int n = adj.size();
    vector<int> dist(n, -1);
    queue<int> q;
    for (int s : sources) { dist[s] = 0; q.push(s); }
    while (!q.empty()) {
        int u = q.front(); q.pop();
        for (int v : adj[u]) {
            if (dist[v] == -1) { dist[v] = dist[u] + 1; q.push(v); }
        }
    }
    return dist;
}
0-1 BFS (Edges with Weight 0 or 1)
cpp
// Time: O(V + E), Space: O(V)
vector<int> bfs01(vector<vector<pair<int,int>>>& adj, int src) {
    int n = adj.size();
    vector<int> dist(n, INT_MAX);
    deque<int> dq;
    dist[src] = 0;
    dq.push_front(src);
    while (!dq.empty()) {
        int u = dq.front(); dq.pop_front();
        for (auto [v, w] : adj[u]) {
            if (dist[u] + w < dist[v]) {
                dist[v] = dist[u] + w;
                if (w == 0) dq.push_front(v);
                else dq.push_back(v);
            }
        }
    }
    return dist;
}

Depth-First Search (DFS)

Iterative DFS (Avoids Stack Overflow)
cpp
// Time: O(V + E), Space: O(V)
void dfs_iterative(vector<vector<int>>& adj, int src) {
    int n = adj.size();
    vector<bool> visited(n, false);
    stack<int> st;
    st.push(src);
    while (!st.empty()) {
        int u = st.top(); st.pop();
        if (visited[u]) continue;
        visited[u] = true;
        for (int v : adj[u])
            if (!visited[v]) st.push(v);
    }
}
DFS with Entry/Exit Times
cpp
// For subtree queries. Time: O(V + E)
int timer = 0;
vector<int> tin, tout;

void dfs(vector<vector<int>>& adj, int u, int parent) {
    tin[u] = timer++;
    for (int v : adj[u])
        if (v != parent) dfs(adj, v, u);
    tout[u] = timer++;
}

bool isAncestor(int u, int v) {
    return tin[u] <= tin[v] && tout[v] <= tout[u];
}
Connected Components
cpp
// Time: O(V + E), Space: O(V)
int countComponents(int n, vector<vector<int>>& adj) {
    vector<bool> visited(n, false);
    int components = 0;
    function<void(int)> dfs = [&](int u) {
        visited[u] = true;
        for (int v : adj[u]) if (!visited[v]) dfs(v);
    };
    for (int i = 0; i < n; i++)
        if (!visited[i]) { dfs(i); components++; }
    return components;
}

Shortest Path Algorithms

Dijkstra's Algorithm
cpp
// Non-negative weights. Time: O((V + E) log V)
vector<long long> dijkstra(vector<vector<pair<int,int>>>& adj, int src) {
    int n = adj.size();
    vector<long long> dist(n, LLONG_MAX);
    priority_queue<pair<long long,int>, vector<pair<long long,int>>, greater<>> pq;
    dist[src] = 0;
    pq.push({0, src});
    while (!pq.empty()) {
        auto [d, u] = pq.top(); pq.pop();
        if (d > dist[u]) continue;
        for (auto [v, w] : adj[u]) {
            if (dist[u] + w < dist[v]) {
                dist[v] = dist[u] + w;
                pq.push({dist[v], v});
            }
        }
    }
    return dist;
}
Bellman-Ford Algorithm
cpp
// Handles negative weights, detects negative cycles
// Time: O(V * E), Space: O(V)
struct Edge { int from, to, weight; };

pair<vector<long long>, bool> bellmanFord(int n, vector<Edge>& edges, int src) {
    vector<long long> dist(n, LLONG_MAX);
    dist[src] = 0;
    for (int i = 0; i < n - 1; i++) {
        bool updated = false;
        for (auto& [u, v, w] : edges) {
            if (dist[u] != LLONG_MAX && dist[u] + w < dist[v]) {
                dist[v] = dist[u] + w;
                updated = true;
            }
        }
        if (!updated) break;
    }
    bool hasNegCycle = false;
    for (auto& [u, v, w] : edges)
        if (dist[u] != LLONG_MAX && dist[u] + w < dist[v]) { hasNegCycle = true; break; }
    return {dist, hasNegCycle};
}
Floyd-Warshall (All-Pairs)
cpp
// Time: O(V^3), Space: O(V^2)
void floydWarshall(vector<vector<long long>>& dist, int n) {
    for (int k = 0; k < n; k++)
        for (int i = 0; i < n; i++)
            for (int j = 0; j < n; j++)
                if (dist[i][k] != LLONG_MAX && dist[k][j] != LLONG_MAX)
                    dist[i][j] = min(dist[i][j], dist[i][k] + dist[k][j]);
}
Algorithm Selection Guide
AlgorithmWeightsNegativeTimeUse When
BFSUnweightedN/AO(V+E)Unit weights
0-1 BFS0 or 1NoO(V+E)Binary weights
DijkstraNon-negativeNoO((V+E)logV)General positive
Bellman-FordAnyYes (detects)O(VE)Negative weights
Floyd-WarshallAnyYes (detects)O(V^3)Small V, all-pairs

Minimum Spanning Tree

Kruskal's Algorithm (Edge-based)
cpp
// Time: O(E log E), Space: O(V)
class UnionFind {
    vector<int> parent, rank_;
public:
    UnionFind(int n) : parent(n), rank_(n, 0) { iota(parent.begin(), parent.end(), 0); }
    int find(int x) { return parent[x] == x ? x : parent[x] = find(parent[x]); }
    bool unite(int x, int y) {
        int px = find(x), py = find(y);
        if (px == py) return false;
        if (rank_[px] < rank_[py]) swap(px, py);
        parent[py] = px;
        if (rank_[px] == rank_[py]) rank_[px]++;
        return true;
    }
};

long long kruskal(int n, vector<tuple<int,int,int>>& edges) {
    sort(edges.begin(), edges.end());
    UnionFind uf(n);
    long long mstWeight = 0;
    int edgeCount = 0;
    for (auto [w, u, v] : edges) {
        if (uf.unite(u, v)) {
            mstWeight += w;
            if (++edgeCount == n - 1) break;
        }
    }
    return mstWeight;
}
Prim's Algorithm (Vertex-based)
cpp
// Time: O((V + E) log V), Space: O(V)
long long prim(vector<vector<pair<int,int>>>& adj) {
    int n = adj.size();
    vector<bool> inMST(n, false);
    priority_queue<pair<int,int>, vector<pair<int,int>>, greater<>> pq;
    pq.push({0, 0});
    long long mstWeight = 0;
    int count = 0;
    while (!pq.empty() && count < n) {
        auto [w, u] = pq.top(); pq.pop();
        if (inMST[u]) continue;
        inMST[u] = true;
        mstWeight += w;
        count++;
        for (auto [v, wt] : adj[u])
            if (!inMST[v]) pq.push({wt, v});
    }
    return mstWeight;
}

Topological Sort

Kahn's Algorithm (BFS-based)
cpp
// Time: O(V + E). If order.size() < n, graph has a cycle.
vector<int> topologicalSort(int n, vector<vector<int>>& adj) {
    vector<int> indegree(n, 0);
    for (int u = 0; u < n; u++)
        for (int v : adj[u]) indegree[v]++;
    queue<int> q;
    for (int i = 0; i < n; i++)
        if (indegree[i] == 0) q.push(i);
    vector<int> order;
    while (!q.empty()) {
        int u = q.front(); q.pop();
        order.push_back(u);
        for (int v : adj[u])
            if (--indegree[v] == 0) q.push(v);
    }
    return order;
}
DFS-based Topological Sort
cpp
// Reverse post-order. Time: O(V + E)
vector<int> topoSortDFS(int n, vector<vector<int>>& adj) {
    vector<int> order, state(n, 0);
    bool hasCycle = false;
    function<void(int)> dfs = [&](int u) {
        if (hasCycle) return;
        state[u] = 1;
        for (int v : adj[u]) {
            if (state[v] == 1) { hasCycle = true; return; }
            if (state[v] == 0) dfs(v);
        }
        state[u] = 2;
        order.push_back(u);
    };
    for (int i = 0; i < n; i++) if (state[i] == 0) dfs(i);
    reverse(order.begin(), order.end());
    return order;
}

Cycle Detection

Directed Graph (DFS Coloring)
cpp
// Time: O(V + E)
bool hasCycleDirected(int n, vector<vector<int>>& adj) {
    vector<int> color(n, 0);
    function<bool(int)> dfs = [&](int u) -> bool {
        color[u] = 1;
        for (int v : adj[u]) {
            if (color[v] == 1) return true;
            if (color[v] == 0 && dfs(v)) return true;
        }
        color[u] = 2;
        return false;
    };
    for (int i = 0; i < n; i++)
        if (color[i] == 0 && dfs(i)) return true;
    return false;
}
Undirected Graph (Union-Find)
cpp
// Time: O(E * alpha(V))
bool hasCycleUndirected(int n, vector<pair<int,int>>& edges) {
    UnionFind uf(n);
    for (auto [u, v] : edges)
        if (uf.find(u) == uf.find(v)) return true;
        else uf.unite(u, v);
    return false;
}

Strongly Connected Components (Kosaraju)

cpp
// Time: O(V + E)
vector<vector<int>> kosaraju(int n, vector<vector<int>>& adj) {
    vector<bool> visited(n, false);
    vector<int> order;
    function<void(int)> dfs1 = [&](int u) {
        visited[u] = true;
        for (int v : adj[u]) if (!visited[v]) dfs1(v);
        order.push_back(u);
    };
    for (int i = 0; i < n; i++) if (!visited[i]) dfs1(i);

    vector<vector<int>> radj(n);
    for (int u = 0; u < n; u++)
        for (int v : adj[u]) radj[v].push_back(u);

    fill(visited.begin(), visited.end(), false);
    vector<vector<int>> sccs;
    function<void(int, vector<int>&)> dfs2 = [&](int u, vector<int>& comp) {
        visited[u] = true;
        comp.push_back(u);
        for (int v : radj[u]) if (!visited[v]) dfs2(v, comp);
    };
    for (int i = n - 1; i >= 0; i--) {
        int u = order[i];
        if (!visited[u]) { sccs.push_back({}); dfs2(u, sccs.back()); }
    }
    return sccs;
}

Common Pitfalls

MistakeFix
Dijkstra with negative weightsUse Bellman-Ford
Not skipping stale entries in DijkstraCheck d > dist[u]
DFS recursion on large graphsUse iterative DFS for V > 10^5
Integer overflow in distancesUse long long
skipping disconnected graphsLoop over all vertices as sources
Not resetting between test casesClear all arrays
Show full SKILL.md (243 more words)Show less

Exercises

  1. Bipartite Check: Determine if graph is bipartite using BFS coloring
  2. Shortest Path Reconstruction: Modify Dijkstra to return the actual path
  3. Course Schedule: Find valid ordering via topological sort
  4. Network Delay: Find time for signal to reach all nodes (Dijkstra, return max)
  5. Bridge Detection: Find bridges using DFS with low-link values

Process

  1. Gather information. Ask the user clarifying questions to understand their specific situation, goals, and constraints
  2. Analyze context. Review the information provided and identify key factors relevant to graph algorithm specialist
  3. Develop recommendations. Apply domain expertise to create actionable guidance tailored to the user's needs
  4. Present structured output. Deliver findings in the output format below with clear next steps
  5. Address follow-ups. Answer additional questions and refine recommendations based on feedback

Output Format

template
## Graph Algorithm Specialist Analysis

### Assessment
[Key findings and observations]

### Recommendations
1. [Primary recommendation]
2. [Secondary recommendation]
3. [Additional suggestions]

### Action Items
- [ ] [First action step]
- [ ] [Second action step]
- [ ] [Follow-up task]

Edge Cases

  • Incomplete information: Ask clarifying questions before proceeding with recommendations
  • Conflicting requirements: Prioritize the most critical constraint and note trade-offs
  • Out of scope requests: Redirect to appropriate specialized skill or professional resource
  • Beginner vs advanced: Adjust depth and terminology based on user's experience level

Example

Input: "Help me with graph algorithm specialist for my current situation"

Output:

Based on your situation, here is a structured approach to graph algorithm specialist:

  1. Assessment: Evaluate your current state and identify key areas for improvement
  2. Strategy: Develop a targeted plan based on best practices
  3. Implementation: Execute the plan with specific, measurable steps
  4. Review: Monitor progress and adjust as needed

© FerroxLabs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in src/process/resources/skills-library/bodies/skills/emerging-tech/graph-algorithm-specialist of FerroxLabs/wayland.

Open the folder on GitHubat commit 4c030c7

Compare with similar skills

Graph Algorithm Specialist next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Graph Algorithm Specialist compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Graph Algorithm Specialist this skillFerroxLabs/wayland608—~3.7kAutomated safety check: PassApache-2.0
Graph Algorithmsparcadei/Continuous-Claude-v33.9k1 repos~967Automated safety check: NotesMIT
Graphagenticnotetaking/arscontexta3.5k1 repos~4.9kAutomated safety check: NotesMIT
Bigquery Graphgoogle/adk-python22k—~4.8kAutomated safety check: PassApache-2.0
Code Review Graph Buildertirth8205/code-review-graph32k—~295Automated safety check: PassMIT
Mini Context Graphgithub/awesome-copilot40k1 repos~2kAutomated safety check: PassMIT

Similar skills

  • Graph Algorithms

    parcadei/Continuous-Claude-v3

    Problem-solving strategies for graph algorithms in graph number theory

    3.9k GitHub starsUsed in 1 repo~967 tokens
    Research & ScienceAuto-check: notes
  • Graph

    agenticnotetaking/arscontexta

    Interactive knowledge graph analysis. An agent skill from agenticnotetaking/arscontexta.

    3.5k GitHub starsUsed in 1 repo~4.9k tokens
    Knowledge ManagementAuto-check: notes
  • Bigquery Graph

    google/adk-python

    Official

    Skill for Graph Query Language (GQL) or SQL/PGQ queries against a property graph.

    22k GitHub stars~4.8k tokensUpdated today
    DatabasesAuto-check passed
  • Code Review Graph Builder

    tirth8205/code-review-graph

    Builds or incrementally updates the code-review knowledge graph for a repository and reports whether the build succeeded, partly or failed.

    32k GitHub stars~295 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Mini Context Graph

    github/awesome-copilot

    Official

    A persistent, compounding knowledge base combining Karpathy's LLM Wiki pattern with a structured knowledge graph.

    40k GitHub starsUsed in 1 repo~2k tokens
    Knowledge ManagementAuto-check passed
  • Graph

    atopile/atopile

    How the Zig-backed instance graph works (GraphView/NodeReference/EdgeReference), the real Python API surface, and the invariants around allocation, attributes, and cleanup.

    4k GitHub stars~952 tokensUpdated 3 mo ago
    Auto-check passed

More from FerroxLabs/wayland

All 1,194 skills in this repo
  • Star Office Helper

    FerroxLabs/wayland

    Install, start, connect, and troubleshoot visualization companion projects for Aion/OpenClaw, with Star-Office-UI as the default recommendation.

    608 GitHub stars~2.2k tokensUpdated yesterday
    Auto-check: notes
  • Openclaw Setup

    FerroxLabs/wayland

    OpenClaw usage expert: Helps you install, deploy, configure, and use OpenClaw personal AI assistant.

    608 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Tvcontrol Setup

    FerroxLabs/wayland

    Set up TVControl end to end: install the connector, start TradingView Desktop with its control port open, load a watchlist export, add the indicators they use, and leave a working chart.

    608 GitHub stars~5.7k tokensUpdated yesterday
    Auto-check passed
  • Ab Testing Specialist

    FerroxLabs/wayland

    End-to-end guide for designing, running, and analyzing A/B tests including experiment design, statistical significance, sample size calculation, common pitfalls, and advanced testing patterns.

    608 GitHub stars~3.7k tokensUpdated yesterday
    Auto-check passed
  • Academic Writer

    FerroxLabs/wayland

    Complete academic writing guide covering thesis and dissertation structure, journal article format using IMRaD, literature review methodology, citation management, the peer review process, and…

    608 GitHub stars~4.5k tokensUpdated yesterday
    Auto-check passed
  • Accessibility Auditor

    FerroxLabs/wayland

    Web accessibility expertise covering WCAG 2.2 conformance, audit methodology, ARIA patterns, keyboard navigation, screen reader testing, focus management, form accessibility, and automated vs manual…

    608 GitHub stars~4.1k tokensUpdated yesterday
    Auto-check passed

Questions about Graph Algorithm Specialist

What does Graph Algorithm Specialist do?

Guides graph algorithm mastery including BFS, DFS, shortest paths, minimum spanning trees, topological sort, and cycle detection with implementation patterns Use when the user asks about graph…. Graph Algorithm Specialist is an agent skill from FerroxLabs/wayland. Guides graph algorithm mastery including BFS, DFS, shortest paths, minimum spanning trees, topological sort, and cycle detection with implementation patterns Use when the user asks about graph algorithm specialist, related techniques, best practices, or needs guidance in this domain.

When should I use Graph Algorithm Specialist?

Graph Algorithm Specialist fits situations like: the user asks about graph algorithm specialist; related techniques; needs guidance in this domain; the request is outside the scope of graph algorithm specialist.

How do I install Graph Algorithm Specialist in Claude Code?

Run `npx skills add FerroxLabs/wayland --skill graph-algorithm-specialist -a claude-code`. Or copy the skill folder (src/process/resources/skills-library/bodies/skills/emerging-tech/graph-algorithm-specialist in FerroxLabs/wayland) into .claude/skills/graph-algorithm-specialist in your project. Claude Code loads it when a task matches its description.

How do I install Graph Algorithm Specialist in Codex?

Run `npx skills add FerroxLabs/wayland --skill graph-algorithm-specialist -a codex`. Or copy the skill folder (src/process/resources/skills-library/bodies/skills/emerging-tech/graph-algorithm-specialist in FerroxLabs/wayland) into .agents/skills/graph-algorithm-specialist in your project. Codex loads it when a task matches its description.

Can I use Graph Algorithm Specialist in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add FerroxLabs/wayland --skill graph-algorithm-specialist -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/graph-algorithm-specialist, .gemini/skills/graph-algorithm-specialist, .github/skills/graph-algorithm-specialist and .opencode/skills/graph-algorithm-specialist in your project.

What does Graph Algorithm Specialist need to run?

SKILL.md names no scripts, command-line tools or credentials: Graph Algorithm Specialist is instructions for the agent only.

Does Graph Algorithm Specialist access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Graph Algorithm Specialist safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Graph Algorithm Specialist use?

Graph Algorithm Specialist is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Graph Algorithm Specialist use?

About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Graph Algorithm Specialist?

Skills that share tags, products or a category with Graph Algorithm Specialist: Graph Algorithms (parcadei/Continuous-Claude-v3, 3.9k stars), Graph (agenticnotetaking/arscontexta, 3.5k stars), Bigquery Graph (google/adk-python, 22k stars) and Code Review Graph Builder (tirth8205/code-review-graph, 32k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Graph Algorithm Specialist?

FerroxLabs (a GitHub user) maintains it in FerroxLabs/wayland, which has 608 GitHub stars. The repository holds 1,194 skills in this directory. The repository was last updated on October 6, 2026.

Source: FerroxLabs/wayland on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.