jahwag / ClaudeSync

ClaudeSync is a Python tool that automates the synchronization of local files with Claude.ai Projects
MIT License
262 stars 29 forks source link

allow setting config file name via environment variable #54

Closed ayushin closed 2 months ago

ayushin commented 2 months ago

Feature Request Template

1. Problem Description

If working on multiple projects you want to be able to easily switch between them.

2. Desired Solution

Set a variable like CLAUDESYNC_CONFIG_PATH that can be set in the IDE for each project.

3. Considered Alternatives

Have CLAUDESYNC_CONFIG_NAME to be used as the $HOME/.claudesync/$CLAUDESYNC_CONFIG_NAME.json

Or change CLAUDESYNC_HOME to project home

Or look for .claudesync/config.json in a project directory - probably not the best idea at risk of accidentally checking it in

4. Use Case

As above

7. Willingness to Contribute

Yes, I can do that - it's just a few lines of code.

jahwag commented 2 months ago

Having multiple ~/claudesync/config.json files would be inconvenient, as users would need to ensure consistency across projects for other configuration options.

However, it’s probably time for ClaudeSync to introduce a ./claudesync/project.json file. While I’ve tried to avoid cluttering repositories—we already have claudesync_chats and .claudeignore—resolving the nearest project based on the terminal’s working directory (similar to Git) would likely better align with user expectations and reduce the amount of typing required when frequently switching projects.

ayushin commented 2 months ago

perhaps a .claudesync with only overrides for the current directory tree

with things like active_project_name and local_path