ruby_todo 0.4.1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.env.template +2 -0
- data/CHANGELOG.md +5 -0
- data/README.md +37 -73
- data/ai_assistant_implementation.md +611 -0
- data/delete_notebooks.rb +20 -0
- data/implementation_steps.md +130 -0
- data/lib/ruby_todo/cli.rb +5 -0
- data/lib/ruby_todo/commands/ai_assistant.rb +453 -0
- data/lib/ruby_todo/version.rb +1 -1
- metadata +34 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7e9f1ea05d4097484fbc96f725c5e505aef99414e51e5be3be40302955d800e6
|
4
|
+
data.tar.gz: '0063384d1426794282c842c7f007d55d5567e275e836dd429e869923e062fa63'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a9549aa3235c94cdd8f94422b4e273bb28e9e1ee69d642bb59ad8f1de8e301623378e561d532e33b6f5bf0da8fac00b7b25a08e3439b4aaf974d67556288aee6
|
7
|
+
data.tar.gz: e4384af97060aa0ada97e143486257ac900ef1e9a7e68f40a492204213b382617360148f5879df5023d54011b276311d230d2b71c036356c7dcd5aae1c1fb3d5
|
data/.env.template
ADDED
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -12,6 +12,7 @@ A powerful CLI todo list manager with multi-notebook support and automated task
|
|
12
12
|
- Task statistics and analytics
|
13
13
|
- Task export and import (JSON, CSV)
|
14
14
|
- Task templates with placeholders
|
15
|
+
- AI assistant for natural language task management
|
15
16
|
- Beautiful CLI interface with colored output
|
16
17
|
- SQLite database for persistent storage
|
17
18
|
|
@@ -202,21 +203,6 @@ List all templates:
|
|
202
203
|
$ ruby_todo template list
|
203
204
|
```
|
204
205
|
|
205
|
-
Show template details:
|
206
|
-
```bash
|
207
|
-
$ ruby_todo template show "Weekly Report"
|
208
|
-
```
|
209
|
-
|
210
|
-
Use a template to create a task:
|
211
|
-
```bash
|
212
|
-
$ ruby_todo template use "Weekly Report" "Work" --replacements week="12"
|
213
|
-
```
|
214
|
-
|
215
|
-
Delete a template:
|
216
|
-
```bash
|
217
|
-
$ ruby_todo template delete "Weekly Report"
|
218
|
-
```
|
219
|
-
|
220
206
|
## Template Placeholders
|
221
207
|
|
222
208
|
Templates support the following placeholder types:
|
@@ -230,83 +216,61 @@ Templates support the following placeholder types:
|
|
230
216
|
- `{month}`: Current month
|
231
217
|
- `{year}`: Current year
|
232
218
|
|
233
|
-
##
|
234
|
-
|
235
|
-
After checking out the repo, run `bundle install` to install dependencies. Then, run `rake test` to run the tests. You can also run `rubocop` to check the code style.
|
219
|
+
## AI Assistant
|
236
220
|
|
237
|
-
|
221
|
+
Ruby Todo includes an AI assistant powered by OpenAI's gpt-4o-mini model that can help you manage your tasks using natural language.
|
238
222
|
|
239
|
-
###
|
223
|
+
### Configuration
|
240
224
|
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
To release a new version, just merge your changes to the main branch. The automation will:
|
247
|
-
1. Increment the patch version
|
248
|
-
2. Update the CHANGELOG.md file
|
249
|
-
3. Run tests to ensure everything works
|
250
|
-
4. Build and publish the gem to RubyGems
|
251
|
-
5. Create a GitHub release
|
252
|
-
|
253
|
-
For manual releases or version changes (major or minor), update the version in `lib/ruby_todo/version.rb` before merging to main.
|
254
|
-
|
255
|
-
## Contributing
|
256
|
-
|
257
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/jeremiahparrack/ruby_todo.
|
258
|
-
|
259
|
-
## License
|
260
|
-
|
261
|
-
The gem is available as open source under the terms of the MIT License.
|
262
|
-
|
263
|
-
## Troubleshooting
|
225
|
+
Configure your AI assistant:
|
226
|
+
```bash
|
227
|
+
$ ruby_todo ai configure
|
228
|
+
```
|
264
229
|
|
265
|
-
###
|
230
|
+
### API Key Options
|
266
231
|
|
267
|
-
|
232
|
+
There are two ways to provide your OpenAI API key:
|
268
233
|
|
269
|
-
1.
|
234
|
+
1. **Configure once with the setup command** (recommended):
|
270
235
|
```bash
|
271
|
-
$
|
236
|
+
$ ruby_todo ai configure
|
272
237
|
```
|
238
|
+
This prompts you to enter your OpenAI API key and securely saves it in `~/.ruby_todo/ai_config.json`.
|
273
239
|
|
274
|
-
2.
|
240
|
+
2. **Use environment variables**:
|
275
241
|
```bash
|
276
|
-
$
|
242
|
+
$ export OPENAI_API_KEY=your_api_key_here
|
243
|
+
$ ruby_todo ai ask "your prompt"
|
277
244
|
```
|
278
245
|
|
279
|
-
3.
|
280
|
-
|
281
|
-
4. You may need to run:
|
246
|
+
3. **Pass the API key directly in the command**:
|
282
247
|
```bash
|
283
|
-
$
|
248
|
+
$ ruby_todo ai ask "your prompt" --api-key=your_api_key_here
|
284
249
|
```
|
285
|
-
or
|
286
|
-
```bash
|
287
|
-
$ rvm rehash # If using RVM
|
288
|
-
```
|
289
|
-
|
290
|
-
### Database Issues
|
291
250
|
|
292
|
-
|
251
|
+
### Using the AI Assistant
|
293
252
|
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
```
|
253
|
+
Ask the AI assistant to perform actions:
|
254
|
+
```bash
|
255
|
+
$ ruby_todo ai ask "Create a new task in my Work notebook to update the documentation by next Friday"
|
256
|
+
```
|
299
257
|
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
```
|
258
|
+
```bash
|
259
|
+
$ ruby_todo ai ask "Move all tasks related to the API project to in_progress status"
|
260
|
+
```
|
304
261
|
|
305
|
-
|
262
|
+
```bash
|
263
|
+
$ ruby_todo ai ask "Create a JSON to import 5 new tasks for my upcoming vacation"
|
264
|
+
```
|
306
265
|
|
307
|
-
|
266
|
+
Pass in an API key directly (if not configured):
|
267
|
+
```bash
|
268
|
+
$ ruby_todo ai ask "What tasks are overdue?" --api-key=your_api_key_here --api=claude
|
269
|
+
```
|
308
270
|
|
271
|
+
Enable verbose mode to see full AI responses:
|
309
272
|
```bash
|
310
|
-
$ ruby_todo --
|
311
|
-
$ ruby_todo task add --help
|
273
|
+
$ ruby_todo ai ask "Summarize my Work notebook" --verbose
|
312
274
|
```
|
275
|
+
|
276
|
+
## Development
|