spec-split

Slice C project functions into layered directories for Frama-C WP verification.

Updated Jun 26, 2026
One-click install
npx skills add https://github.com/leisure118/spectool --skill spec-split-leisure118
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spec-split
Source: https://github.com/leisure118/spectool/tree/main/.claude/skills/spec-split
Command: npx skills add https://github.com/leisure118/spectool --skill spec-split-leisure118

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires spectool, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill automates the complex task of slicing and layering functions from a large C project, making it ready for spec-orchestrate verification.

Core Features & Use Cases

  • Function Slicing: Automatically generate slices of functions for Frama-C WP verification.
  • Layered Directory Structure: Output a structured directory for layered verification, simplifying the workflow.
  • Customization: Allow users to specify function subsets and output directories.

Quick Start

Run the spec-split skill with the C project directory as input.

Frequently Asked Questions about spec-split

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate function slicing for Frama-C WP verification in a large C project?

Automating function slicing for Frama-C WP verification involves generating individual function slices and organizing them into a layered directory structure. This process prepares large-scale C projects for structured, incremental proof workflows.

What is DAG layering in the context of C project verification?

DAG layering in C project verification is the process of organizing function slices into a directed acyclic graph based on dependencies. It outputs a layered directory structure to simplify sequential Frama-C WP verification.

Do I need Python and spectool to slice C project files?

Yes, you need a Python environment with spectool and its dependencies installed to slice C project files. The automated slicing and DAG layering rely on this setup to process large-scale C codebases for Frama-C.

Can I specify a subset of functions for Frama-C slicing instead of the whole project?

Yes, you can specify function subsets and output directories when slicing for Frama-C verification. This allows you to target specific parts of a large C project rather than processing the entire codebase.

What is the best way to prepare a large-scale C codebase for spec-orchestrate verification?

The best way to prepare a large-scale C codebase for spec-orchestrate verification is to automate function-level slicing and DAG layering. This generates stub and inline slices in a structured directory for manageable proofs.