IWE CLI
Command-line interface for IWE (IDE for Writing) - a local-first, markdown-based knowledge management tool designed for developers.
Installation
Install from source:
Or build locally:
Quick Start
# Initialize a new workspace
&&
# Add some markdown files
# Normalize formatting
# Generate table of contents
# Explore knowledge graph paths
# Export for visualization
Commands
init
Initialize a new IWE workspace with configuration.
Creates .iwe/config.toml with default settings for markdown processing.
normalize
Format and normalize all markdown files in the workspace.
Applies consistent formatting to headers, lists, links, and spacing according to configuration.
paths
List knowledge graph paths through document structure.
Shows navigation paths through your content hierarchy.
squash
Combine content for a specific document key.
Flattens hierarchical content into a single markdown document.
contents
Generate a table of contents for the workspace.
Creates markdown links to all top-level documents.
export
Export knowledge graph in various formats.
Configuration
IWE uses .iwe/config.toml for workspace configuration:
[]
= "" # Relative path to markdown files
[]
= true
= true
Features
- Fast Processing: Handle thousands of documents in seconds
- Knowledge Graph: Understand document relationships and structure
- Flexible Export: JSON and DOT formats for integration
- Consistent Formatting: Automatic markdown normalization
- Hierarchical Organization: Support for nested content structures
- Link Management: Automatic link title updates
Examples
Basic Workflow
# Set up workspace
# Process and format files
# Understand structure
# Generate reports
Integration with Other Tools
# Visualize with Graphviz
|
# Process with jq
|
# Batch processing
for; do
key=
done
Global Options
All commands support:
-v, --verbose <LEVEL>: Set verbosity (0-2)-h, --help: Show help information-V, --version: Show version
Use Cases
- Documentation Management: Keep technical docs organized and formatted
- Research Notes: Connect and explore related concepts
- Meeting Records: Combine distributed notes into comprehensive documents
- Knowledge Base: Build searchable, linked information systems
- Content Publishing: Generate clean, formatted output for sharing
Performance
IWE is optimized for large document collections:
- Processes thousands of files in seconds
- Efficient graph traversal algorithms
- Minimal memory footprint
- Parallel processing where beneficial
Integration
Works well with:
- Git: Track changes to normalized markdown
- VSCode/Neovim: Use with IWE LSP for full IDE experience
- Static Site Generators: Clean, consistent markdown output
- Documentation Tools: Export to various formats
- Graph Visualization: DOT/Graphviz, Gephi, etc.
License
Apache-2.0
Related Projects
- IWE LSP Server - Language server for editor integration
- IWE Core Library - Core functionality and graph processing
- VSCode Extension
- Zed Plugin
For more information, visit iwe.md.