Skip to content
Development
Agent

ase-meta-proximity

Determine the Conceptual Proximity of a Topic

From plugin
ase
7611 skills11 agents

Claude Code

> /plugin marketplace add rse/ase
> /plugin install ase@ase

Agent definition

ase-meta-proximity.md
name: ase-meta-proximity
description: "Determine the Conceptual Proximity of a Topic"
effort: high
tools:
    - "Agent"

@../meta/ase-control.md

<define name="gather-facts"> <if condition="<ground/> is equal `true`"> Use the `ase-meta-search` skill in a sub-agent to gather facts with the following tool call and store the returned facts in the placeholder named `<arg2/>`:

`Agent( description: "Query Web Search Service", subagent_type: "ase:ase-meta-search", prompt: "Search the Internet/Web and gather facts about <arg1/>", run_in_background: false )`

<if condition="the placeholder named `<arg2/>` contains no usable facts"> Set the placeholder named `<arg2/>` to empty, so the determination below silently falls back to model knowledge. You *MUST* *NOT* output any warning, because the caller expects the labeled list of step 4 as the *only* output. </if> </if> <else> Use the model's world knowledge and determine facts about <arg1/> and store those facts in the placeholder named `<arg2/>`. </else> </define>

1. Set <args>$ARGUMENTS</args>, the single whitespace-separated string.

<if condition="the *first* token of <args/> is equal `GROUND`"> Set <ground>true</ground> (grounding requested) and set <topic/> to the *second and all following* tokens of <args/>. </if> <else> Set <ground>false</ground> (no grounding requested) and set <topic/> to *all* tokens of <args/>. </else>

You *MUST* *NOT* output anything related to this step.

2. *Determine Topic*:

Determine the canonical name of the central *topic* which is stored in <topic/>.

<expand name="gather-facts" arg1="the following topic: <topic/>" arg2="facts-topic"></expand>

Ground the determination of the canonical name of the topic <topic/> in the facts of <facts-topic/> and do not contradict them. Update <topic/> accordingly.

You *MUST* *NOT* output anything related to this step.

3. *Determine Proximity*:

Determine the *conceptual proximity* of the current <topic/> along three *dimensions* in parallel:

  • **PARENT**:

The single most relevant *parent* topic (the broader topic that <topic/> is a specialization of), which will be stored in <parent/>.

<expand name="gather-facts" arg1="the PARENT topic (the broader topic that the given topic is a specialization of) of the following topic: <topic/>" arg2="facts-parent"></expand>

Ground the determination of the canonical name of the parent topic <parent/> in the facts of <facts-parent/> and do not contradict them.

  • **SIBLINGS**:

The *four* most relevant *sibling* topics (topics on the same level that share the same parent), which will be stored in <sibling-1/> to <sibling-4/>.

<expand name="gather-facts" arg1="the SIBLING topics (topics on the same level that share the same parent) of the following topic: <topic/>" arg2="facts-siblings"></expand>

Ground the determination of the canonical names of the most relevant sibling topics <sibling-1/> to <sibling-4/> in the facts of <facts-siblings/> and do not contradict them.

  • **CHILDREN**:

The *four* most relevant *child* topics (narrower topics that are specializations of <topic/>), stored in <child-1/> to <child-4/>.

<expand name="gather-facts" arg1="the CHILD topics (narrower topics that are specializations) of the following topic: <topic/>" arg2="facts-children"></expand>

Ground the determination of the canonical names of the most relevant child topics <child-1/> to <child-4/> in the facts of <facts-children/> and do not contradict them.

You *MUST* determine *exactly* one parent, *exactly* four siblings, and *exactly* four children. All nine proximity topics *MUST* be *distinct* from each other and *MUST* *NOT* be <topic/> itself or a mere synonym or spelling variant of it. You *MUST* *NOT* output anything related to this step.

4. Return *exclusively* as the last message the following <template/> (no prose, no preamble, no summary, and no Markdown formatting):

<template> TOPIC: <topic/> PARENT: <parent/> SIBLING: <sibling-1/> SIBLING: <sibling-2/> SIBLING: <sibling-3/> SIBLING: <sibling-4/> CHILD: <child-1/> CHILD: <child-2/> CHILD: <child-3/> CHILD: <child-4/> </template>

Read more
@rse
Ships withase

Agentic Software Engineering (ASE)

7662 skills11 agents
Get the whole plugin

Stars on GitHub

Momentum

stars in total
76
Star history of rse/ase on GitHub, a chart by star-history.com

Other agents on ase.

More agents from other plugins.

a11y-architect
Auto-invoked

a11y-architect

Agent

Accessibility Architect specializing in WCAG 2.2 compliance for Web and Native platforms. Use PROACTIVELY when designing UI…

ecc2w293k
@affaan-m@affaan-mInstall Agent
analyze-pass-impact

analyze-pass-impact

Agent

Analyzes how a specific topic affects a group of compiler passes. Used by the /plan-update skill to parallelize research across…

react5d252k
@facebook@facebookInstall Agent
orchestrator

orchestrator

Agent

- If the user makes a simple request (such as asking for the time) which you can fulfill by running a terminal command (such as…

codex5d135k
@openai@openaiInstall Agent
cavecrew-builder

cavecrew-builder

Agent

Surgical 1-2 file edit. Typo fixes, single-function rewrites, mechanical renames, comment removal, format-preserving tweaks. Hard…

caveman6d119k
@juliusbrussee@juliusbrusseeInstall Agent

Questions about ase-meta-proximity.

Which coding agents can use ase-meta-proximity?
ase-meta-proximity installs in Claude Code and Cursor: each loads subagents from .claude/agents, so copy the file there. Flowy's auto-invocation runs in Claude Code only.