Skip to main content

Syntax

Description

The spec show command displays comprehensive information about a specification. This includes:
  • Basic metadata (title, priority, timestamps)
  • File path location
  • Full content/description
  • Parent-child relationships
  • Outgoing relationships (what this spec references/depends on)
  • Incoming relationships (what references/depends on this spec)
  • Tags
  • Feedback received from issues
This command is useful for understanding a spec’s full context, including all entities connected to it through relationships and feedback.

Arguments

spec-id
string
required
The ID of the spec to displayExample: SPEC-001The spec ID must exist in your project.

Output Format

The command displays information in the following sections:

Header Section

  • Spec ID and Title - Displayed prominently
  • Priority - 0-4 priority level
  • File Path - Location of markdown file
  • Parent - Parent spec ID (if hierarchical)
  • Created/Updated - Timestamps
  • Tags - Associated tags

Content Section

  • Full markdown content of the spec

Outgoing Relationships

  • Relationships from this spec to other entities
  • Format: relationship_type → TARGET_ID (entity_type)

Incoming Relationships

  • Relationships from other entities to this spec
  • Format: SOURCE_ID (entity_type) → relationship_type

Feedback Received

  • Feedback provided by issues
  • Shows feedback ID, source issue, type, status, and preview

Examples

Basic Usage

Display a spec:

Spec with Parent Hierarchy

View a child spec:

Spec with No Relationships

View a standalone spec:

JSON Output

Get machine-readable output:

Understanding Relationships

Outgoing Relationships

Shows what this spec connects to:
Interpretation: SPEC-001 references SPEC-010 and depends on SPEC-005

Incoming Relationships

Shows what connects to this spec:
Interpretation: Two issues implement this spec, and another spec references it

Understanding Feedback

Feedback shows issues providing input on the spec:
Components:
  • FB-001 - Feedback ID
  • ISSUE-001 - Source issue
  • [active] - Not dismissed
  • [valid] - Anchor is still valid (line hasn’t moved)
  • request - Feedback type (comment, suggestion, or request)
  • line 42 - Anchored location
  • Preview of feedback content

Common Workflows

Reviewing a Spec Before Work

1

View the spec

2

Check implementation status

Look at incoming relationships to see which issues implement it
3

Review feedback

Check if there are any unresolved questions or requests
4

Identify dependencies

Review outgoing relationships for specs that need to be read first

Understanding Spec Context

1

Find the spec

2

View details

3

Follow references

4

Check implementation

Verifying Spec Updates

1

Update the spec

2

Verify changes

3

Check impact

Review incoming relationships to see affected issues

Common Questions

  • Outgoing: Relationships FROM this spec TO other entities (what this spec references)
  • Incoming: Relationships FROM other entities TO this spec (what references this spec)
Example: If SPEC-001 implements requirements from SPEC-010:
  • SPEC-001 has outgoing references to SPEC-010
  • SPEC-010 has incoming references from SPEC-001
The spec show command displays the content directly in the terminal. To edit the markdown file:
Anchor status indicates if feedback is still pointing to the correct location:
  • [valid] - Anchor is accurate, line hasn’t changed
  • [relocated] - Content moved, but anchor was successfully relocated
  • [stale] - Content changed significantly, anchor may be invalid
See the feedback system documentation for details on anchor relocation.
Currently, spec show displays all available information. For scripting, use --json and parse specific fields with jq:
Check the “Incoming Relationships” section. Any spec with a references relationship type is referencing this spec:

Troubleshooting

Cause: The spec ID doesn’t existSolution: Verify the ID with:
Or search for the spec:
Cause: The spec has no description/content in the markdown fileSolution: This is normal for newly created specs. Add content by editing the markdown file or using:
Cause: The spec has no relationships created yetSolution: This is normal. Create relationships with:

spec list

List all specs

spec update

Update spec properties

spec create

Create new spec

issue show

View issue details

link

Create relationships

feedback add

Add feedback to spec

Next Steps

1

View a spec

2

Follow relationships

Use IDs from the relationships section to explore connected entities
3

Review feedback

Address any open feedback or requests
4

Create implementation issues

Specs Concept Guide

Learn more about specs and how they fit into sudocode’s workflow