Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm using Claude Desktop to develop an agentic crawler system. My workflow is VSCode next to Claude Desktop. The tooling for Claude uses a bunch of MCP servers I wrote for Evolve: https://github.com/kordless/gnosis-evolve

Core Development Capabilities:

- File Discovery & Navigation: file_explorer with pattern matching and recursive search

- Intelligent Code Search: search_in_file_fuzzy with similarity thresholds for finding relevant code sections

- Advanced Code Editing: file_diff_writer with fuzzy matching that can handle code changes even after refactoring

- Backups: backup and restores of any files at any state of change.

- System Monitoring: Real-time log analysis and container management

- Hot Deployment: docker_rebuild for instant container updates (Claude can do the rebuild)

The Agentic Workflow:

- Claude searches your codebase to understand current implementation

- Uses fuzzy search to find related code patterns and dependencies

- Makes intelligent edits using fuzzy replacement (handles formatting changes)

- Monitors logs to verify changes work correctly

- Restarts containers as needed for testing

- Iterates based on log feedback

- Error handling requires analyzing logs and adjusting parsing strategies

- Performance tuning benefits from quick deploy-test-analyze cycles

I've not had any issues with Claude being able to handle changes, even doing things like refactoring overly large HTML files with inline CSS and JS. Had it move all that to a more manageable layout and helped out by deleting large blocks when necessary.

The fuzzy matching engine is the heart of the system. It uses several different strategies working in harmony. First, it tries exact matching, which is straightforward. If that fails, it normalizes whitespace by collapsing multiple spaces, removing trailing whitespace, and standardizing line breaks, then attempts to match again. This handles cases where code has been reformatted but remains functionally identical.

When dealing with multi-line code blocks, the system gets particularly clever. It breaks both the search text and the target content into individual lines, then calculates similarity scores for each line pair. If the average similarity across all lines exceeds the threshold, it considers it a match. This allows it to find code blocks even when individual lines have been slightly modified, variable names changed, or indentation adjusted.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: