Agent skill

Visual Exploration

by prime-radiant-inc in prime-radiant-inc/greenfield

Layer 1 skill for browser automation and visual UX documentation.

Apache-2.0Auto-check passedProductivity & Automation

Install Visual Exploration

skills CLI
$ npx skills add prime-radiant-inc/greenfield --skill visual-exploration -a claude-code

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

GitHub CLI
$ gh skill install prime-radiant-inc/greenfield visual-exploration --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/prime-radiant-inc/greenfield.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/visual-exploration .claude/skills/visual-exploration && 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
visual-exploration
GitHub stars
292
Token cost
~3.7k tokens
SKILL.md length
1,076 words
Files
1
Skills in repo
21
Repo updated
First seen
Licence
Apache-2.0

At a glance

Layer 1 skill for browser automation and visual UX documentation.

  • Works in 5 steps: Initial Reconnaissance → Navigation Mapping → Interaction Documentation → …
  • Tasks that involve Browser automation
  • SKILL.md covers When to Use This Mode, Why Visual Exploration Matters, Phase 1: Initial Reconnaissance and Phase 2: Navigation Mapping, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Visual Exploration is an agent skill from prime-radiant-inc/greenfield. Layer 1 skill for browser automation and visual UX documentation. Initial reconnaissance, navigation mapping, interaction documentation, end-to-end flow capture, edge case exploration, screenshot methodology. Loaded by the analyzer agent during Layer 1.

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.

It sits in Productivity & Automation, covering Browser automation. The repository describes itself as: A Claude Code plugin that reverse-engineers clean behavioral specs, test vectors, and acceptance criteria from any codebase, producing a provenance trail so a fresh team can… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Browser automation

Example prompts

  • “/visual-exploration”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Initial Reconnaissance
  2. Navigation Mapping
  3. Interaction Documentation
  4. Flow Documentation
  5. Edge Cases

What it can do on your machine

Read from SKILL.md and the folder at commit 6e6d4b4. 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 javascript, markdown and bash).

    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

Visual Exploration loads about 3.7k tokens when it runs. Until then it costs about 68 tokens; SKILL.md has 1,076 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~68
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 prime-radiant-inc/greenfield at commit 6e6d4b4, republished under its Apache-2.0 licence (© prime-radiant-inc). 1,076 words, ~3,743 tokens.

Download SKILL.mdSave it as .claude/skills/visual-exploration/SKILL.md (or your agent's skills folder).
name
visual-exploration
description
Layer 1 skill for browser automation and visual UX documentation. Initial reconnaissance, navigation mapping, interaction documentation, end-to-end flow capture, edge case exploration, screenshot methodology. Loaded by the analyzer agent during Layer 1.

Visual Exploration Methodology

Document behavioral intelligence through browser automation and visual observation. Every screenshot is an empirical observation. Every interaction sequence is a behavioral flow. This mode captures what the user SEES and what the system DOES in response to user actions.

When to Use This Mode

Visual exploration activates when:

  • The target is a web application with a UI
  • The discovery inventory identifies a running web UI accessible via HTTP
  • A running instance of the target is accessible via HTTP

This mode requires a running instance of the target application and browser automation capabilities (Playwright, Puppeteer, or equivalent). All output is RAW (screenshots and flow documentation capture the target's UI in detail).

Targets without a web UI get no useful signal from this mode — skip it.

Why Visual Exploration Matters

Source code tells you what the system CAN do. Tests tell you what the system MUST do. Visual exploration tells you what the system LOOKS LIKE while doing it. This is behavioral intelligence that no other mode captures:

  • Affordances -- what actions does the UI present as available?
  • Feedback -- how does the system communicate success, failure, and state changes?
  • Navigation structure -- how are features organized from the user's perspective?
  • State representation -- how does the UI change as the system's state changes?
  • Accessibility -- is the interface usable with keyboard, screen reader, or at different sizes?

Phase 1: Initial Reconnaissance

Goal: Navigate to the root URL, capture the landing page, and identify the application type, auth requirements, and available affordances.

1.1 Landing Page Capture
bash
# Navigate to root URL and screenshot
# (Using Playwright as reference; adapt to available browser automation)
javascript
const page = await browser.newPage();
await page.goto(ROOT_URL, { waitUntil: 'networkidle' });
await page.screenshot({ path: 'workspace/raw/runtime/visual/screenshots/001-landing.png', fullPage: true });
1.2 Initial Assessment

Document:

  • Application type -- SPA, MPA, dashboard, wizard, documentation site, etc.
  • Authentication -- does the landing page require login? Is there a signup flow?
  • Primary navigation -- top nav, sidebar, hamburger menu, tabs, breadcrumbs?
  • Visible affordances -- buttons, links, forms, search bars, dropdowns visible on the landing page
  • Branding and layout -- header, footer, sidebar, content area dimensions
1.3 Auth Handling

If authentication is required:

  1. Screenshot the login page
  2. Document the auth method (username/password, OAuth, SSO, API key)
  3. If test credentials are available, authenticate and screenshot the post-login state
  4. If no credentials are available, document the gate and explore only the unauthenticated surface

Phase 2: Navigation Mapping

Goal: Click every navigation element, screenshot each page, and document the complete navigation tree.

2.1 Identify Navigation Elements
javascript
// Extract all navigation links
const navLinks = await page.$$eval('nav a, [role="navigation"] a, .sidebar a, .menu a, header a', 
  links => links.map(a => ({ text: a.textContent.trim(), href: a.href }))
);
2.2 Systematic Traversal

For each navigation element:

  1. Click the element (or navigate to the href)
  2. Wait for the page to settle (network idle or DOM stable)
  3. Take a full-page screenshot
  4. Record the URL, page title, and visible heading
  5. Identify sub-navigation elements on the new page
javascript
for (const [index, link] of navLinks.entries()) {
  await page.goto(link.href, { waitUntil: 'networkidle' });
  await page.screenshot({ 
    path: `workspace/raw/runtime/visual/screenshots/nav-${String(index).padStart(3, '0')}-${slugify(link.text)}.png`,
    fullPage: true 
  });
}
2.3 Navigation Tree Output

Write to workspace/raw/runtime/visual/navigation-map.md:

markdown
## Navigation Tree

- **Home** (`/`) -- screenshot: 001-landing.png
  - **Dashboard** (`/dashboard`) -- screenshot: nav-001-dashboard.png
    - **Analytics** (`/dashboard/analytics`) -- screenshot: nav-002-analytics.png
    - **Reports** (`/dashboard/reports`) -- screenshot: nav-003-reports.png
  - **Settings** (`/settings`) -- screenshot: nav-004-settings.png
    - **Profile** (`/settings/profile`) -- screenshot: nav-005-profile.png
    - **Billing** (`/settings/billing`) -- screenshot: nav-006-billing.png

Phase 3: Interaction Documentation

Goal: For each page, identify interactive elements, interact with them, and capture before/after screenshots documenting the system's feedback.

3.1 Element Inventory

For each page, identify:

  • Forms -- text inputs, selects, checkboxes, radio buttons, textareas, file uploads
  • Buttons -- submit buttons, action buttons, toggle buttons
  • Dropdowns -- select menus, custom dropdown components
  • Modals/dialogs -- elements that trigger overlay content
  • Expandable sections -- accordions, collapsible panels, "show more" links
  • Interactive widgets -- date pickers, sliders, color pickers, drag-and-drop zones
javascript
const interactiveElements = await page.$$eval(
  'button, input, select, textarea, [role="button"], [role="tab"], [onclick], a[href="#"]',
  els => els.map(el => ({
    tag: el.tagName,
    type: el.type || '',
    text: el.textContent?.trim().substring(0, 50),
    id: el.id,
    name: el.name,
    ariaLabel: el.getAttribute('aria-label'),
  }))
);
3.2 Interaction Capture

For each interactive element:

  1. Before screenshot -- capture the page state before interaction
  2. Interact -- click, type, select, toggle
  3. After screenshot -- capture the page state after interaction
  4. Document feedback -- what changed? Error message? Success toast? New content?
javascript
// Example: form submission
await page.screenshot({ path: `screenshots/form-${name}-before.png` });
await page.fill('input[name="email"]', 'test@example.com');
await page.click('button[type="submit"]');
await page.waitForTimeout(1000); // Allow time for feedback
await page.screenshot({ path: `screenshots/form-${name}-after.png` });
3.3 Page Inventory Output

Write to workspace/raw/runtime/visual/page-inventory.md:

markdown
## Page: Settings > Profile

**URL:** `/settings/profile`
**Screenshot:** nav-005-profile.png

### Interactive Elements

| Element | Type | Action Taken | Feedback | Screenshots |
|---------|------|-------------|----------|-------------|
| Display Name | text input | Typed "Test User" | No immediate feedback | form-profile-before.png, form-profile-after.png |
| Save | submit button | Clicked | Success toast: "Profile updated" | form-profile-save.png |
| Avatar | file upload | Uploaded test.png | Preview updated | form-profile-avatar.png |

Phase 4: Flow Documentation

Goal: Document end-to-end user flows with screenshots at every state transition.

4.1 Core Flows to Document

Document these flows whenever they exist:

FlowDescriptionPriority
OnboardingFirst-time user experience from signup to first useHigh
Core workflowThe primary task the application enablesHigh
Error recoveryWhat happens when something goes wrongHigh
Settings/configurationHow users customize the applicationMedium
Search/filterHow users find content within the applicationMedium
CRUD operationsCreate, read, update, delete for primary entitiesMedium
Authentication flowLogin, logout, password reset, session expiryMedium
Export/importHow data moves in and out of the applicationLower
Show full SKILL.md (414 more words)Show less
4.2 Flow Documentation Format

For each flow, create a directory under workspace/raw/runtime/visual/flows/:

workspace/raw/runtime/visual/flows/
    onboarding/
        step-01-landing.png
        step-02-signup-form.png
        step-03-email-verification.png
        step-04-profile-setup.png
        step-05-first-dashboard.png
        flow.md
    core-workflow/
        step-01-start.png
        step-02-input.png
        step-03-processing.png
        step-04-result.png
        flow.md

Each flow.md follows this format:

markdown
# Flow: Onboarding

## Steps

### Step 1: Landing Page
**Screenshot:** step-01-landing.png
**URL:** `/`
**Action:** Click "Sign Up" button
**State:** Unauthenticated, no account

### Step 2: Signup Form
**Screenshot:** step-02-signup-form.png
**URL:** `/signup`
**Action:** Fill email, password, click "Create Account"
**State:** Unauthenticated, form displayed
**Feedback:** Form validation on blur for email format

### Step 3: Email Verification
**Screenshot:** step-03-email-verification.png
**URL:** `/verify`
**Action:** (requires email access -- documented but not tested)
**State:** Account created, not verified
**Feedback:** "Check your email" message displayed

## Behavioral Claims

- New accounts require email verification before first use
  <!-- cite: source=visual-observation, ref=flows/onboarding/step-03-email-verification.png, confidence=confirmed, agent=visual-explorer -->

Phase 5: Edge Cases

Goal: Explore edge cases that reveal the system's behavior at its boundaries.

5.1 Empty States
javascript
// Navigate to pages likely to have empty states (lists, dashboards, search results)
// Screenshot each empty state
await page.goto('/projects'); // Assuming no projects exist
await page.screenshot({ path: 'screenshots/empty-projects.png', fullPage: true });

Document: What does the system show when there is no data? Does it provide guidance? Is the UI broken?

5.2 Long Content
javascript
// Submit forms with very long text
await page.fill('input[name="title"]', 'A'.repeat(1000));
await page.screenshot({ path: 'screenshots/long-input.png' });

Document: Does the system truncate? Overflow? Reject? Scroll?

5.3 Responsive Layout
javascript
// Test at different viewport sizes
const viewports = [
  { width: 375, height: 812, name: 'mobile' },     // iPhone
  { width: 768, height: 1024, name: 'tablet' },     // iPad
  { width: 1280, height: 800, name: 'laptop' },     // Laptop
  { width: 1920, height: 1080, name: 'desktop' },   // Desktop
];

for (const vp of viewports) {
  await page.setViewportSize({ width: vp.width, height: vp.height });
  await page.screenshot({ path: `screenshots/responsive-${vp.name}.png`, fullPage: true });
}

Document: Does the layout adapt? Is navigation accessible at mobile sizes? Are interactive elements reachable?

5.4 Accessibility
javascript
// Check for keyboard navigation
await page.keyboard.press('Tab');
await page.screenshot({ path: 'screenshots/keyboard-focus-1.png' });
await page.keyboard.press('Tab');
await page.screenshot({ path: 'screenshots/keyboard-focus-2.png' });

// Check for skip links
await page.keyboard.press('Tab'); // First tab should focus skip-to-content if present

Document: Is keyboard navigation possible? Are focus indicators visible? Is there a skip-to-content link?

Screenshot Naming Convention

All screenshots follow this naming scheme:

{phase}-{context}-{description}.png
Phase PrefixUsage
001- through 099-Phase 1: Initial reconnaissance
nav-NNN-Phase 2: Navigation mapping
form-{page}-Phase 3: Interaction documentation
step-NN-Phase 4: Flow documentation (within flow subdirectory)
edge-{type}-Phase 5: Edge case exploration
Directory Structure
workspace/raw/runtime/visual/
    screenshots/                    # All screenshots (flat, except flows)
        001-landing.png
        nav-001-dashboard.png
        nav-002-analytics.png
        form-profile-before.png
        form-profile-after.png
        edge-empty-projects.png
        edge-responsive-mobile.png
    flows/                          # End-to-end flow documentation
        onboarding/
            step-01-landing.png
            step-02-signup.png
            flow.md
        core-workflow/
            step-01-start.png
            step-02-result.png
            flow.md
    navigation-map.md               # Complete navigation tree with screenshot refs
    page-inventory.md               # Per-page interactive element inventory
    visual-behaviors.md             # Behavioral claims synthesized from all observations

Provenance Rules

Source Type

All claims from visual exploration use source=visual-observation:

markdown
- The dashboard displays a "No projects" message with a "Create Project" call-to-action when the project list is empty
  <!-- cite: source=visual-observation, ref=screenshots/edge-empty-projects.png, confidence=confirmed, agent=visual-explorer -->
Confidence Levels
  • confirmed -- the behavior is directly visible in a screenshot or demonstrated by a before/after screenshot pair
  • inferred -- the behavior is implied by UI elements but not directly observed (e.g., a "Delete" button exists but was not clicked)
  • assumed -- the behavior is guessed from visual cues (e.g., a grayed-out button is assumed to be disabled)
Cite As You Go

Every behavioral claim gets an inline citation immediately after the claim. The ref field should be the screenshot path.

Rules

  1. Screenshots are RAW -- visual captures of proprietary UI go to workspace/raw/. They never reach workspace/output/ or workspace/public/.
  2. Screenshot everything -- when in doubt, take a screenshot. Storage is cheap. Missing a state transition screenshot cannot be recovered without re-running the exploration.
  3. Before AND after -- every interaction must have a before screenshot and an after screenshot. The behavioral claim is the DIFFERENCE between the two.
  4. Wait for stability -- after every action, wait for the page to settle before screenshotting. Use networkidle or explicit waits for dynamic content.
  5. Do not invent interactions -- only interact with elements that are visible and actionable. If a button is disabled, document that it is disabled. Do not force-enable it.
  6. Auth gates are data -- if a page requires authentication you do not have, that gate is a behavioral claim worth documenting.
  7. Cite as you go -- every behavioral claim gets an inline <!-- cite: --> comment immediately after the claim. Never defer citation to a later step.
  8. Full page screenshots -- use fullPage: true to capture below-the-fold content. Viewport-only screenshots miss content.

© prime-radiant-inc, 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 skills/visual-exploration of prime-radiant-inc/greenfield.

Open the folder on GitHubat commit 6e6d4b4

Compare with similar skills

Visual Exploration 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.

Visual Exploration compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Visual Exploration this skillprime-radiant-inc/greenfield292—~3.7kAutomated safety check: PassApache-2.0
Gauntletanomalyco/browser-control440—~1.1kAutomated safety check: PassMIT
Browsemr-daedalium/ostack-saas1141 repos~5.3kAutomated safety check: NotesMIT
Tabz BrowserGGPrompts/TabzChrome147—~730Automated safety check: PassMIT
Pstackno-session/pstack136—~5.6kAutomated safety check: NotesMIT
Peated QAdcramer/peated102—~1.9kAutomated safety check: NotesApache-2.0

Similar skills

  • Gauntlet

    anomalyco/browser-control

    Run a real-world navigation and capability gauntlet on Browser Control across live websites, fix general DOM/ARIA/CDP root causes, benchmark speed and token efficiency, and finish with a mandatory…

    440 GitHub stars~1.1k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Browse

    mr-daedalium/ostack-saas

    Fast headless browser for QA testing and site dogfooding. An agent skill from mr-daedalium/ostack-saas.

    114 GitHub starsUsed in 1 repo~5.3k tokens
    Productivity & AutomationAuto-check: notes
  • Tabz Browser

    GGPrompts/TabzChrome

    Browser automation via 70 tabz MCP tools. An agent skill from GGPrompts/TabzChrome.

    147 GitHub stars~730 tokensUpdated 12 days ago
    Productivity & AutomationAuto-check passed
  • Pstack

    no-session/pstack

    Fast headless browser for QA testing and site dogfooding. An agent skill from no-session/pstack.

    136 GitHub stars~5.6k tokensUpdated 6 mo ago
    Productivity & AutomationAuto-check: notes
  • Peated QA

    dcramer/peated

    A skill your agent uses when manually QAing Peated changes across the API, CLI, or web UI; selecting smoke checks after code changes; using agent-browser for Peated flows; verifying local behavior…

    102 GitHub stars~1.9k tokensUpdated 7 days ago
    Productivity & AutomationAuto-check: notes
  • Viewer Render

    iopsystems/rezolus

    Render the running viewer in a real headless browser and assert on what it drew — element geometry, computed colours, wrap points, truncated labels, console errors.

    275 GitHub stars~1.7k tokensUpdated today
    Productivity & AutomationAuto-check passed

More from prime-radiant-inc/greenfield

All 21 skills in this repo
  • Reverse Engineering Analysis Pipeline

    prime-radiant-inc/greenfield

    Master methodology for reverse-engineering a codebase into behavioral specs with cited evidence, reading every line across source, binaries, docs, runtime and git history.

    292 GitHub stars~3.6k tokensUpdated 2 mo ago
    Auto-check passed
  • Community Intelligence Research

    prime-radiant-inc/greenfield

    Mines tutorials, forums, reviews, issues and changelogs for observed product behavior, using six search channels and consensus analysis.

    292 GitHub stars~4.5k tokensUpdated 2 mo ago
    Auto-check passed
  • Containerized Target Execution

    prime-radiant-inc/greenfield

    Runs untrusted analysis targets inside Docker or Podman containers with memory, CPU and process limits, covering image builds, lifecycle, command execution and cleanup.

    292 GitHub stars~2.1k tokensUpdated 2 mo ago
    Auto-check passed
  • API Contract Detection

    prime-radiant-inc/greenfield

    Finds OpenAPI, GraphQL, Protobuf and JSON Schema files in a codebase and extracts behavioral claims from them as part of a reverse-engineering workflow.

    292 GitHub stars~4.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Documentation Research Methodology

    prime-radiant-inc/greenfield

    Method for extracting behavioral specifications from a product's public documentation: tiered search order, claim extraction rules, output structure, stop criteria and gap analysis.

    292 GitHub stars~4.6k tokensUpdated 2 mo ago
    Auto-check passed
  • Ecosystem Analysis

    prime-radiant-inc/greenfield

    Layer 1 skill for SDK and ecosystem analysis. An agent skill from prime-radiant-inc/greenfield.

    292 GitHub stars~2.9k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Visual Exploration

What does Visual Exploration do?

Layer 1 skill for browser automation and visual UX documentation. Visual Exploration is an agent skill from prime-radiant-inc/greenfield. Layer 1 skill for browser automation and visual UX documentation.

When should I use Visual Exploration?

Visual Exploration fits situations like: tasks that involve Browser automation.

How do I install Visual Exploration in Claude Code?

Run `npx skills add prime-radiant-inc/greenfield --skill visual-exploration -a claude-code`. Or copy the skill folder (skills/visual-exploration in prime-radiant-inc/greenfield) into .claude/skills/visual-exploration in your project. Claude Code loads it when a task matches its description.

How do I install Visual Exploration in Codex?

Run `npx skills add prime-radiant-inc/greenfield --skill visual-exploration -a codex`. Or copy the skill folder (skills/visual-exploration in prime-radiant-inc/greenfield) into .agents/skills/visual-exploration in your project. Codex loads it when a task matches its description.

Can I use Visual Exploration 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 prime-radiant-inc/greenfield --skill visual-exploration -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/visual-exploration, .gemini/skills/visual-exploration, .github/skills/visual-exploration and .opencode/skills/visual-exploration in your project.

What does Visual Exploration need to run?

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

Does Visual Exploration 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 Visual Exploration 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 Visual Exploration use?

Visual Exploration is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Visual Exploration 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 Visual Exploration?

Skills that share tags, products or a category with Visual Exploration: Gauntlet (anomalyco/browser-control, 440 stars), Browse (mr-daedalium/ostack-saas, 114 stars), Tabz Browser (GGPrompts/TabzChrome, 147 stars) and Pstack (no-session/pstack, 136 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Visual Exploration?

prime-radiant-inc (a GitHub organization) maintains it in prime-radiant-inc/greenfield, which has 292 GitHub stars. The repository holds 21 skills in this directory. The repository was last updated on August 6, 2026.

Source: prime-radiant-inc/greenfield on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.