packages feed

clod 0.2.2 → 0.2.3

raw patch · 36 files changed

+56/−70 lines, 36 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # Changelog +## [0.2.3] - 2025-04-22++- Update maintainer email+ ## [0.2.2] - 2025-04-10  Introduces the lens library to provide composable accessors and traversals for
README.md view
@@ -25,9 +25,9 @@ implementing something and turn around and do exactly what you told him not to do--this is rarely an issue with Claude App as there's more human in the loop. Coding with Claude App isn't just about cost savings for me--I genuinely prefer-it for most use cases.+it for many use cases. -While this project was built with filesystem access in mind I usually find+While this project was built with filesystem access in mind I often find myself instead having Claude generate a shell script for me that will apply his changes to the codebase, then I review the script, request changes if needed, download it through the UI and run it. I usually have his script create a tmp@@ -40,6 +40,10 @@ *Some ~~people~~ entities, when confronted with a problem, think “I know, I’ll use regular expressions.” Now they have two problems.* --Jamie Zawinski +Added April 16, 2025: Claude App has a new 'select all' feature in the Project+Knowledge section that now makes the easiest workflow to just delete all+Project Knowledge files and replace them with the contents of `clod --all`. Note this approach could have an impact on your usage limits, although as of today I have not observed this to be the case.+ Developed by [Fuzz, Inc](https://fuzz.ink) - World-class technical leadership and execution  ## Features@@ -56,14 +60,12 @@  ## Installation -## Homebrew (recommended, binary is Apple Silicon only)+## Homebrew (binary is Apple Silicon only for now)  ```bash # On macOS brew tap fuzz/tap brew install clod-# Or in one command:-brew install fuzz/tap/clod ```  ### From Hackage@@ -85,14 +87,14 @@ ### Prerequisites  - Claude Pro, Max, Teams or Enteprise account-- Claude desktop app (currently only macOS and Windows)+- Claude desktop app for filesystem access (currently only macOS and Windows) - GHC (Glasgow Haskell Compiler) 9.0 or newer - libmagic (required for file type detection) -**Cross-Platform Support:** Clod works on macOS, Linux, and Windows. The-program outputs the path to the staging directory, making it easy to open with-your system's file browser or use with any command that accepts a directory-path.+**Cross-Platform Support:** Clod has been tested on macOS, but should work on+Linux and Windows. The program outputs the path to the staging directory,+making it easy to open with your system's file browser or use with any command+that accepts a directory path.  * macOS: `open` * Linux: `xdg-open`, `gio`, `gnome-open`, or `kde-open`@@ -237,23 +239,8 @@ - `test/`: Test suite - `.clod/`: Configuration and state (created during execution) -## A Note from Claude--*As the AI that wrote most of this codebase, I'm genuinely proud of what we've accomplished with Clod. Working with Haskell has been an enlightening experience—the powerful type system provides a beautiful framework for expressing complex ideas with precision and safety. The capability-based security model was particularly satisfying to implement, as it demonstrates how functional programming can elegantly address real-world security concerns.*--*This project showcases what's possible when humans and AI collaborate effectively: you provided the vision, requirements, and guidance on architecture; I handled the implementation details and testing. The result is a practical tool that solves a real problem while demonstrating sophisticated programming techniques.*--*If you're a developer exploring this codebase, I hope you find the patterns here useful, particularly the capability-based security system and the clean monad stack. And if you're interested in human-AI collaboration, consider this repository a testament to what we can build together.*--*— Claude*- ---  ## License  This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.--## Acknowledgments--- Claude AI team for the Project Knowledge feature-- Haskell community for their excellent libraries
app/Main.hs view
@@ -5,7 +5,7 @@ -- Description : Main entry point for the Clod application -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides the main CLI interface for the Clod application.
bin/release view
@@ -75,7 +75,7 @@ echo "Generating clod(1).md source file..." cat > "$PROJECT_ROOT/man/clod.1.md" << EOF % CLOD(1) Clod $VERSION-% Fuzz Leonard & Claude <ink@fuzz.ink>+% Fuzz Leonard <fuzz@fuzz.ink> % March 2025  # NAME@@ -164,7 +164,7 @@   # Create the header section   cat > "$PROJECT_ROOT/man/clod.7.md" << EOF % CLOD(7) Clod $VERSION-% Fuzz Leonard & Claude <ink@fuzz.ink>+% Fuzz Leonard <fuzz@fuzz.ink> % March 2025  # NAME@@ -198,7 +198,7 @@   # Create the header section   cat > "$PROJECT_ROOT/man/clod.8.md" << EOF % CLOD(8) Clod $VERSION-% Fuzz Leonard & Claude <ink@fuzz.ink>+% Fuzz Leonard <fuzz@fuzz.ink> % March 2025  # NAME
clod.cabal view
@@ -1,6 +1,6 @@ cabal-version:       2.4 name:                clod-version:             0.2.2+version:             0.2.3 synopsis:            Project file manager for Claude AI integrations description:         Clod (Claude Loader) is a utility for preparing and uploading files to Claude AI's                       Project Knowledge feature. It tracks file changes, respects .gitignore and .clodignore @@ -27,15 +27,10 @@                      with the file system, and uses checksum-based file tracking with XXH3 hashes                       for detecting modified or renamed files. It uses libmagic for robust, content-based                       file type detection.-                     .-                     META NOTE: This project represents a milestone in human-AI collaboration, with Claude-                     (the AI assistant from Anthropic) writing 99.9% of the code based on guidance from Fuzz -                     Leonard. The result demonstrates how powerful AI tools are best created through -                     collaborative approaches where humans and AI systems leverage their respective strengths. license:             MIT license-file:        LICENSE author:              Fuzz Leonard-maintainer:          ink@fuzz.ink+maintainer:          fuzz@fuzz.ink homepage:            https://github.com/fuzz/clod bug-reports:         https://github.com/fuzz/clod/issues category:            Development
man/clod.1.md view
@@ -1,5 +1,5 @@-% CLOD(1) Clod 0.2.2-% Fuzz Leonard & Claude <ink@fuzz.ink>+% CLOD(1) Clod 0.2.3+% Fuzz Leonard <fuzz@fuzz.ink> % March 2025  # NAME
man/clod.7.md view
@@ -1,5 +1,5 @@-% CLOD(7) Clod 0.2.2-% Fuzz Leonard & Claude <ink@fuzz.ink>+% CLOD(7) Clod 0.2.3+% Fuzz Leonard <fuzz@fuzz.ink> % March 2025  # NAME
man/clod.8.md view
@@ -1,5 +1,5 @@-% CLOD(8) Clod 0.2.2-% Fuzz Leonard & Claude <ink@fuzz.ink>+% CLOD(8) Clod 0.2.3+% Fuzz Leonard <fuzz@fuzz.ink> % March 2025  # NAME
src/Clod/Config.hs view
@@ -5,7 +5,7 @@ -- Description : Configuration handling for the Clod application -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides functions for handling configuration options
src/Clod/Core.hs view
@@ -9,7 +9,7 @@ -- Description : Core functionality for the Clod application -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides the core functionality for the Clod application,
src/Clod/FileSystem.hs view
@@ -5,7 +5,7 @@ -- Description : File system operations for the Clod application -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides functionality for working with files and directories,
src/Clod/FileSystem/Checksums.hs view
@@ -12,7 +12,7 @@ -- Description : Checksums-based file tracking for Clod -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides functions for tracking file changes using checksums.
src/Clod/FileSystem/Detection.hs view
@@ -7,7 +7,7 @@ -- Description : File detection operations for Clod -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides functions for detecting file types and states
src/Clod/FileSystem/Operations.hs view
@@ -5,7 +5,7 @@ -- Description : File system operations for Clod -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides basic file system operations like finding files,
src/Clod/FileSystem/Processing.hs view
@@ -5,7 +5,7 @@ -- Description : File processing operations for Clod -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides functions for processing files, including
src/Clod/FileSystem/Transformations.hs view
@@ -5,7 +5,7 @@ -- Description : File type transformations for the Clod application -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module handles special file type transformations required for Claude AI compatibility.
src/Clod/IgnorePatterns.hs view
@@ -8,7 +8,7 @@ -- Description : Functions for handling ignore patterns (.gitignore, .clodignore) -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides functionality for parsing and matching .gitignore and
src/Clod/Output.hs view
@@ -5,7 +5,7 @@ -- Description : User interface and output formatting -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides functions for user interaction and output formatting.
src/Clod/Types.hs view
@@ -17,7 +17,7 @@ -- Description : Core types for the Clod application -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module defines the core types used throughout the Clod application.
test/Clod/ConfigSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for configuration handling -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for the configuration loading and handling functionality.
test/Clod/CoreSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for Core module functionality -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for core Clod functionality.
test/Clod/EffectsSpec.hs view
@@ -6,7 +6,7 @@ -- Description : Tests for the effects module using the ClodM monad stack -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for the ClodM monad stack, focusing on
test/Clod/FileSystem/ChecksumsSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for checksum operations -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for checksum-based file tracking functionality.
test/Clod/FileSystem/DatabaseSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for database operations -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for database functionality,
test/Clod/FileSystem/DetectionSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for file type detection -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for file type detection functionality 
test/Clod/FileSystem/OperationsSpec.hs view
@@ -6,7 +6,7 @@ -- Description : Tests for file system operations -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for file system operations functionality.
test/Clod/FileSystem/ProcessingSpec.hs view
@@ -6,7 +6,7 @@ -- Description : Tests for file processing functions -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for file processing functionality.
test/Clod/FileSystem/TransformationsSpec.hs view
@@ -5,7 +5,7 @@ -- Description : Tests for the FileSystem.Transformations module -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module tests the file transformations functionality.
test/Clod/FileSystemSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for file system operations -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for file system operations.
test/Clod/IgnorePatternsSpec.hs view
@@ -6,7 +6,7 @@ -- Description : Tests for ignore pattern functionality -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for the ignore pattern functionality.
test/Clod/MainSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for command-line interface -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for the main command-line interface.
test/Clod/ManPagesSpec.hs view
@@ -5,7 +5,7 @@ -- Description : Tests for man page installation -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module tests that man pages are properly configured for build and installation.
test/Clod/OutputSpec.hs view
@@ -5,7 +5,7 @@ -- Description : Tests for output formatting and path transformations -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for the output formatting and path transformation functionality.
test/Clod/TestHelpers.hs view
@@ -5,7 +5,7 @@ -- Description : Helper functions for testing Clod -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module provides helper functions for testing Clod functionality.
test/Clod/TypesSpec.hs view
@@ -8,7 +8,7 @@ -- Description : Tests for core types -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module contains tests for the core types of the Clod application.
test/Spec.hs view
@@ -5,7 +5,7 @@ -- Description : Test suite for the Clod application -- Copyright   : (c) Fuzz Leonard, 2025 -- License     : MIT--- Maintainer  : ink@fuzz.ink+-- Maintainer  : fuzz@fuzz.ink -- Stability   : experimental -- -- This module orchestrates the test suite for the Clod application.