Verdent Docs

Limitations & Constraints

Understanding Verdent's limitations and constraints

What You'll Learn

Known limitations of Verdent for VS Code, including file format restrictions, tool constraints, and platform-specific considerations.


Known Limitations

Binary Files Not Supported

Verdent's file tools only work with text-based formats. The following cannot be edited:

Format TypeExamples
ImagesPNG, JPG, GIF, SVG (as binary)
VideosMP4, AVI, MOV
Compiled CodeEXE, DLL, SO
ArchivesZIP, TAR, GZ
Office DocsDOCX, XLSX, PPTX
PDFsPDF files

Workaround: Binary files can be referenced in code or discussed conceptually, but modifications require external tools.

file_read Line Limits

Limitation:

  • Large files (>10,000 lines) should be read in sections
  • Reading entire large files may cause context exhaustion

Solution: Use line ranges: file_read("file.js", start_line=100, max_lines=50)


bash Command Timeouts

Limitation:

  • Maximum timeout: 120 seconds (2 minutes)
  • Long-running operations will be automatically terminated

Solution: Break operations into smaller commands that complete within 2 minutes


Search Performance

Limitation:

  • Broad glob patterns (**/*) can return thousands of results
  • Regex searches slower than literal strings

Solution: Use specific patterns and exclude unnecessary directories

Context Exhaustion

Issue: During long sessions or complex operations, the AI's context window can fill up, limiting the ability to reference earlier conversation.

Mitigation Strategies:

  • Use subagents for exploratory research (results only consume main context)
  • Read files strategically with line ranges
  • Use grep_file before reading full contents
  • Delegate background tasks to Explorer subagent

For files over 500 lines, always use line ranges to preserve context space.


What Verdent Cannot Do

No Direct System Administration

Cannot:

  • Modify VS Code settings programmatically
  • Install VS Code extensions automatically
  • Change system-level configurations
  • Restart VS Code or system services

Scope: Verdent operates within the VS Code workspace, not at the system administration level.

No Autonomous Execution

Manual Accept Mode Controls:

  • Users must approve tool executions in Manual Accept Mode
  • No automated background operations without approval
  • Cannot run commands while VS Code is closed

Purpose: Safety and user control over all operations.

Verdent cannot execute commands in the background without user approval. All operations require explicit consent in Manual Accept Mode.

No Real-Time Monitoring

Cannot:

  • Monitor running processes continuously
  • Track file system changes in real-time
  • Alert on system events
  • Stream log files continuously

Alternative: Use MCP integrations for external monitoring tools.

No Network Operations Without MCP

Built-in Limitations:

  • Cannot make arbitrary HTTP requests (use web_fetch for specific pages)
  • No direct database connections (requires MCP)
  • Cannot access cloud services directly (requires MCP)
  • No real-time API integrations (requires MCP)

Solution: Configure MCP servers for external system access.


Platform-Specific Restrictions

Operating System Differences

bash Tool Behavior:

PlatformShellNotes
macOS/Linuxbash/zshFull bash functionality
WindowsPowerShellSome bash commands unavailable, use PowerShell equivalents
WSLbashLinux commands work in WSL environment

Path Handling:

  • Windows uses backslashes (\), Unix uses forward slashes (/)
  • File paths may need adjustment for cross-platform projects

VS Code Version Requirements

Minimum Requirements:

  • VS Code version compatibility (check extension marketplace for current minimum)
  • Sufficient disk space for context caching

Specific version requirements are maintained in the VS Code marketplace listing. Check extension details for current compatibility.


Workspace Constraints

Single Workspace Focus:

  • Verdent operates within one VS Code workspace at a time
  • Cannot simultaneously modify files across multiple open VS Code windows
  • Multi-root workspaces supported but context limited to current active workspace

Workarounds for Common Limitations

Binary File Modification

Limitation: Cannot edit images, PDFs, or compiled binaries

Workarounds:

  • Reference external tools in bash commands: bash("convert input.png -resize 50% output.png")
  • Generate scripts that external tools can execute
  • Document manual steps for binary file operations

Example:

# Image conversion
bash("convert input.png -resize 50% output.png")

# PDF to text
bash("pdftotext document.pdf output.txt")

Large File Handling

Limitation: Files over 10,000 lines strain the context window

Workarounds:

  • Use line ranges: file_read("large.log", start_line=1000, max_lines=100)
  • Search first: grep_content("ERROR", glob="large.log") to find relevant sections
  • Break files into smaller modules for easier management

Always use grep_content first to identify relevant sections, then read only those specific line ranges.

Context Window Exhaustion

Limitation: Long conversations fill the context window

Workarounds:

  • Delegate to Explorer subagent for codebase research
  • Use Verifier subagent for isolated validation tasks
  • Start new conversation for distinct tasks
  • Use todo_update to track progress across sessions

Best Practice: Delegate background research to subagents to preserve main context for active development.

Platform Command Differences

Limitation: bash commands differ between Windows and Unix

Workarounds:

  • Use cross-platform tools: npm scripts instead of raw bash
  • Conditional commands: bash("if [[ \"$OSTYPE\" == \"linux-gnu\"* ]]; then ...; fi")
  • Project-specific AGENTS.md with platform notes

Example:

# Cross-platform
bash("npm run build")

# Platform-specific conditional
bash("if [[ \"$OSTYPE\" == \"linux-gnu\"* ]]; then make; else nmake; fi")

Future Improvements

Limitations are continuously being addressed. Check Verdent release notes for updates on expanded capabilities, increased limits, and new integrations.


See Also