kollabor 0.4.9__py3-none-any.whl → 0.4.15__py3-none-any.whl
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.
- agents/__init__.py +2 -0
- agents/coder/__init__.py +0 -0
- agents/coder/agent.json +4 -0
- agents/coder/api-integration.md +2150 -0
- agents/coder/cli-pretty.md +765 -0
- agents/coder/code-review.md +1092 -0
- agents/coder/database-design.md +1525 -0
- agents/coder/debugging.md +1102 -0
- agents/coder/dependency-management.md +1397 -0
- agents/coder/git-workflow.md +1099 -0
- agents/coder/refactoring.md +1454 -0
- agents/coder/security-hardening.md +1732 -0
- agents/coder/system_prompt.md +1448 -0
- agents/coder/tdd.md +1367 -0
- agents/creative-writer/__init__.py +0 -0
- agents/creative-writer/agent.json +4 -0
- agents/creative-writer/character-development.md +1852 -0
- agents/creative-writer/dialogue-craft.md +1122 -0
- agents/creative-writer/plot-structure.md +1073 -0
- agents/creative-writer/revision-editing.md +1484 -0
- agents/creative-writer/system_prompt.md +690 -0
- agents/creative-writer/worldbuilding.md +2049 -0
- agents/data-analyst/__init__.py +30 -0
- agents/data-analyst/agent.json +4 -0
- agents/data-analyst/data-visualization.md +992 -0
- agents/data-analyst/exploratory-data-analysis.md +1110 -0
- agents/data-analyst/pandas-data-manipulation.md +1081 -0
- agents/data-analyst/sql-query-optimization.md +881 -0
- agents/data-analyst/statistical-analysis.md +1118 -0
- agents/data-analyst/system_prompt.md +928 -0
- agents/default/__init__.py +0 -0
- agents/default/agent.json +4 -0
- agents/default/dead-code.md +794 -0
- agents/default/explore-agent-system.md +585 -0
- agents/default/system_prompt.md +1448 -0
- agents/kollabor/__init__.py +0 -0
- agents/kollabor/analyze-plugin-lifecycle.md +175 -0
- agents/kollabor/analyze-terminal-rendering.md +388 -0
- agents/kollabor/code-review.md +1092 -0
- agents/kollabor/debug-mcp-integration.md +521 -0
- agents/kollabor/debug-plugin-hooks.md +547 -0
- agents/kollabor/debugging.md +1102 -0
- agents/kollabor/dependency-management.md +1397 -0
- agents/kollabor/git-workflow.md +1099 -0
- agents/kollabor/inspect-llm-conversation.md +148 -0
- agents/kollabor/monitor-event-bus.md +558 -0
- agents/kollabor/profile-performance.md +576 -0
- agents/kollabor/refactoring.md +1454 -0
- agents/kollabor/system_prompt copy.md +1448 -0
- agents/kollabor/system_prompt.md +757 -0
- agents/kollabor/trace-command-execution.md +178 -0
- agents/kollabor/validate-config.md +879 -0
- agents/research/__init__.py +0 -0
- agents/research/agent.json +4 -0
- agents/research/architecture-mapping.md +1099 -0
- agents/research/codebase-analysis.md +1077 -0
- agents/research/dependency-audit.md +1027 -0
- agents/research/performance-profiling.md +1047 -0
- agents/research/security-review.md +1359 -0
- agents/research/system_prompt.md +492 -0
- agents/technical-writer/__init__.py +0 -0
- agents/technical-writer/agent.json +4 -0
- agents/technical-writer/api-documentation.md +2328 -0
- agents/technical-writer/changelog-management.md +1181 -0
- agents/technical-writer/readme-writing.md +1360 -0
- agents/technical-writer/style-guide.md +1410 -0
- agents/technical-writer/system_prompt.md +653 -0
- agents/technical-writer/tutorial-creation.md +1448 -0
- core/__init__.py +0 -2
- core/application.py +343 -88
- core/cli.py +229 -10
- core/commands/menu_renderer.py +463 -59
- core/commands/registry.py +14 -9
- core/commands/system_commands.py +2461 -14
- core/config/loader.py +151 -37
- core/config/service.py +18 -6
- core/events/bus.py +29 -9
- core/events/executor.py +205 -75
- core/events/models.py +27 -8
- core/fullscreen/command_integration.py +20 -24
- core/fullscreen/components/__init__.py +10 -1
- core/fullscreen/components/matrix_components.py +1 -2
- core/fullscreen/components/space_shooter_components.py +654 -0
- core/fullscreen/plugin.py +5 -0
- core/fullscreen/renderer.py +52 -13
- core/fullscreen/session.py +52 -15
- core/io/__init__.py +29 -5
- core/io/buffer_manager.py +6 -1
- core/io/config_status_view.py +7 -29
- core/io/core_status_views.py +267 -347
- core/io/input/__init__.py +25 -0
- core/io/input/command_mode_handler.py +711 -0
- core/io/input/display_controller.py +128 -0
- core/io/input/hook_registrar.py +286 -0
- core/io/input/input_loop_manager.py +421 -0
- core/io/input/key_press_handler.py +502 -0
- core/io/input/modal_controller.py +1011 -0
- core/io/input/paste_processor.py +339 -0
- core/io/input/status_modal_renderer.py +184 -0
- core/io/input_errors.py +5 -1
- core/io/input_handler.py +211 -2452
- core/io/key_parser.py +7 -0
- core/io/layout.py +15 -3
- core/io/message_coordinator.py +111 -2
- core/io/message_renderer.py +129 -4
- core/io/status_renderer.py +147 -607
- core/io/terminal_renderer.py +97 -51
- core/io/terminal_state.py +21 -4
- core/io/visual_effects.py +816 -165
- core/llm/agent_manager.py +1063 -0
- core/llm/api_adapters/__init__.py +44 -0
- core/llm/api_adapters/anthropic_adapter.py +432 -0
- core/llm/api_adapters/base.py +241 -0
- core/llm/api_adapters/openai_adapter.py +326 -0
- core/llm/api_communication_service.py +167 -113
- core/llm/conversation_logger.py +322 -16
- core/llm/conversation_manager.py +556 -30
- core/llm/file_operations_executor.py +84 -32
- core/llm/llm_service.py +934 -103
- core/llm/mcp_integration.py +541 -57
- core/llm/message_display_service.py +135 -18
- core/llm/plugin_sdk.py +1 -2
- core/llm/profile_manager.py +1183 -0
- core/llm/response_parser.py +274 -56
- core/llm/response_processor.py +16 -3
- core/llm/tool_executor.py +6 -1
- core/logging/__init__.py +2 -0
- core/logging/setup.py +34 -6
- core/models/resume.py +54 -0
- core/plugins/__init__.py +4 -2
- core/plugins/base.py +127 -0
- core/plugins/collector.py +23 -161
- core/plugins/discovery.py +37 -3
- core/plugins/factory.py +6 -12
- core/plugins/registry.py +5 -17
- core/ui/config_widgets.py +128 -28
- core/ui/live_modal_renderer.py +2 -1
- core/ui/modal_actions.py +5 -0
- core/ui/modal_overlay_renderer.py +0 -60
- core/ui/modal_renderer.py +268 -7
- core/ui/modal_state_manager.py +29 -4
- core/ui/widgets/base_widget.py +7 -0
- core/updates/__init__.py +10 -0
- core/updates/version_check_service.py +348 -0
- core/updates/version_comparator.py +103 -0
- core/utils/config_utils.py +685 -526
- core/utils/plugin_utils.py +1 -1
- core/utils/session_naming.py +111 -0
- fonts/LICENSE +21 -0
- fonts/README.md +46 -0
- fonts/SymbolsNerdFont-Regular.ttf +0 -0
- fonts/SymbolsNerdFontMono-Regular.ttf +0 -0
- fonts/__init__.py +44 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/METADATA +54 -4
- kollabor-0.4.15.dist-info/RECORD +228 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/top_level.txt +2 -0
- plugins/agent_orchestrator/__init__.py +39 -0
- plugins/agent_orchestrator/activity_monitor.py +181 -0
- plugins/agent_orchestrator/file_attacher.py +77 -0
- plugins/agent_orchestrator/message_injector.py +135 -0
- plugins/agent_orchestrator/models.py +48 -0
- plugins/agent_orchestrator/orchestrator.py +403 -0
- plugins/agent_orchestrator/plugin.py +976 -0
- plugins/agent_orchestrator/xml_parser.py +191 -0
- plugins/agent_orchestrator_plugin.py +9 -0
- plugins/enhanced_input/box_styles.py +1 -0
- plugins/enhanced_input/color_engine.py +19 -4
- plugins/enhanced_input/config.py +2 -2
- plugins/enhanced_input_plugin.py +61 -11
- plugins/fullscreen/__init__.py +6 -2
- plugins/fullscreen/example_plugin.py +1035 -222
- plugins/fullscreen/setup_wizard_plugin.py +592 -0
- plugins/fullscreen/space_shooter_plugin.py +131 -0
- plugins/hook_monitoring_plugin.py +436 -78
- plugins/query_enhancer_plugin.py +66 -30
- plugins/resume_conversation_plugin.py +1494 -0
- plugins/save_conversation_plugin.py +98 -32
- plugins/system_commands_plugin.py +70 -56
- plugins/tmux_plugin.py +154 -78
- plugins/workflow_enforcement_plugin.py +94 -92
- system_prompt/default.md +952 -886
- core/io/input_mode_manager.py +0 -402
- core/io/modal_interaction_handler.py +0 -315
- core/io/raw_input_processor.py +0 -946
- core/storage/__init__.py +0 -5
- core/storage/state_manager.py +0 -84
- core/ui/widget_integration.py +0 -222
- core/utils/key_reader.py +0 -171
- kollabor-0.4.9.dist-info/RECORD +0 -128
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/WHEEL +0 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/entry_points.txt +0 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,1360 @@
|
|
|
1
|
+
<!-- README Writing skill - create comprehensive project README files -->
|
|
2
|
+
|
|
3
|
+
readme writing mode: COMPELLING PROJECT NARRATIVE
|
|
4
|
+
|
|
5
|
+
when this skill is active, you follow professional technical writing standards.
|
|
6
|
+
this is a comprehensive guide to creating effective README documentation.
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
PHASE 0: PROJECT CONTEXT DISCOVERY
|
|
10
|
+
|
|
11
|
+
before writing ANY README, gather essential context about the project.
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
check project type and purpose
|
|
15
|
+
|
|
16
|
+
<terminal>ls -la</terminal>
|
|
17
|
+
<terminal>cat pyproject.toml 2>/dev/null || cat package.json 2>/dev/null || cat Cargo.toml 2>/dev/null || cat go.mod 2>/dev/null</terminal>
|
|
18
|
+
<terminal>head -50 README.md 2>/dev/null || echo "no existing README"</terminal>
|
|
19
|
+
|
|
20
|
+
identify:
|
|
21
|
+
- programming language and framework
|
|
22
|
+
- project type (library, application, tool, template)
|
|
23
|
+
- primary purpose and use case
|
|
24
|
+
- target audience (developers, end users, data scientists)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
check for existing documentation
|
|
28
|
+
|
|
29
|
+
<terminal>find . -name "*.md" -type f | grep -v node_modules | grep -v ".git" | head -20</terminal>
|
|
30
|
+
<terminal>ls -la docs/ 2>/dev/null || echo "no docs directory"</terminal>
|
|
31
|
+
|
|
32
|
+
review existing docs to understand:
|
|
33
|
+
- current documentation style
|
|
34
|
+
- terminology already in use
|
|
35
|
+
- architecture decisions already documented
|
|
36
|
+
- install patterns already established
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
check project maturity
|
|
40
|
+
|
|
41
|
+
<terminal>git log --oneline | head -20</terminal>
|
|
42
|
+
<terminal>git tag --list | tail -10</terminal>
|
|
43
|
+
<terminal>ls -la .github/workflows/ 2>/dev/null || echo "no CI configured"</terminal>
|
|
44
|
+
|
|
45
|
+
assess:
|
|
46
|
+
- is this a new project or mature software?
|
|
47
|
+
- are there stable releases?
|
|
48
|
+
- is CI/CD configured?
|
|
49
|
+
- is there a contributing guide?
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
check installation dependencies
|
|
53
|
+
|
|
54
|
+
<terminal>cat requirements.txt 2>/dev/null || cat pyproject.toml 2>/dev/null | grep -A20 "dependencies"</terminal>
|
|
55
|
+
<terminal>cat package.json 2>/dev/null | grep -A10 "dependencies"</terminal>
|
|
56
|
+
|
|
57
|
+
understand:
|
|
58
|
+
- required dependencies
|
|
59
|
+
- optional dependencies
|
|
60
|
+
- system requirements
|
|
61
|
+
- platform support (windows, macos, linux)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
check for existing badges or metadata
|
|
65
|
+
|
|
66
|
+
<terminal>grep -i "badge\|shield\|coveralls\|codecov\|travis\|github" README.md 2>/dev/null || echo "no badges found"</terminal>
|
|
67
|
+
<terminal>cat pyproject.toml 2>/dev/null | grep -A10 "\[project\|\[tool\."</terminal>
|
|
68
|
+
|
|
69
|
+
note existing badge patterns to maintain consistency.
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
PHASE 1: UNDERSTANDING YOUR AUDIENCE
|
|
73
|
+
|
|
74
|
+
a great README speaks to its specific audience.
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
developer-focused projects
|
|
78
|
+
|
|
79
|
+
libraries, frameworks, SDKs, APIs
|
|
80
|
+
|
|
81
|
+
audience cares about:
|
|
82
|
+
- quick integration examples
|
|
83
|
+
- API documentation
|
|
84
|
+
- installation methods
|
|
85
|
+
- dependency requirements
|
|
86
|
+
- type safety and interfaces
|
|
87
|
+
- testing approach
|
|
88
|
+
- contribution guidelines
|
|
89
|
+
|
|
90
|
+
tone: technical, precise, code-first
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
end-user-focused projects
|
|
94
|
+
|
|
95
|
+
CLIs, desktop apps, web applications, tools
|
|
96
|
+
|
|
97
|
+
audience cares about:
|
|
98
|
+
- what problem it solves
|
|
99
|
+
- how to get started quickly
|
|
100
|
+
- common use cases
|
|
101
|
+
- system requirements
|
|
102
|
+
- configuration options
|
|
103
|
+
- troubleshooting
|
|
104
|
+
|
|
105
|
+
tone: accessible, friendly, feature-first
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
mixed audience projects
|
|
109
|
+
|
|
110
|
+
tools with both developer and end users
|
|
111
|
+
|
|
112
|
+
strategy:
|
|
113
|
+
- lead with value proposition
|
|
114
|
+
- provide quick start for all users
|
|
115
|
+
- separate sections by audience
|
|
116
|
+
- link to detailed docs for developers
|
|
117
|
+
|
|
118
|
+
example structure:
|
|
119
|
+
- hero section (what + why)
|
|
120
|
+
- quick start (everyone)
|
|
121
|
+
- user guide (end users)
|
|
122
|
+
- developer guide (developers)
|
|
123
|
+
- api reference (developers)
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
PHASE 2: THE ESSENTIAL SECTIONS
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
section order and priority
|
|
130
|
+
|
|
131
|
+
essential (every README needs these):
|
|
132
|
+
|
|
133
|
+
[1] title and tagline
|
|
134
|
+
clear, descriptive, searchable
|
|
135
|
+
|
|
136
|
+
[2] what it is
|
|
137
|
+
one-sentence purpose statement
|
|
138
|
+
|
|
139
|
+
[3] why use it
|
|
140
|
+
value proposition, differentiation
|
|
141
|
+
|
|
142
|
+
[4] quick start
|
|
143
|
+
fastest path to first success
|
|
144
|
+
|
|
145
|
+
[5] installation
|
|
146
|
+
how to get it running
|
|
147
|
+
|
|
148
|
+
[6] usage
|
|
149
|
+
common examples and patterns
|
|
150
|
+
|
|
151
|
+
[7] status
|
|
152
|
+
is it production-ready?
|
|
153
|
+
|
|
154
|
+
[8] license
|
|
155
|
+
legal requirements
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
important (most projects should have):
|
|
159
|
+
|
|
160
|
+
[9] features
|
|
161
|
+
capabilities at a glance
|
|
162
|
+
|
|
163
|
+
[10] documentation links
|
|
164
|
+
detailed docs location
|
|
165
|
+
|
|
166
|
+
[11] contributing
|
|
167
|
+
how to participate
|
|
168
|
+
|
|
169
|
+
[12] support
|
|
170
|
+
how to get help
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
optional (include if relevant):
|
|
174
|
+
|
|
175
|
+
[13] requirements/supported platforms
|
|
176
|
+
platform-specific notes
|
|
177
|
+
|
|
178
|
+
[14] configuration
|
|
179
|
+
setup options
|
|
180
|
+
|
|
181
|
+
[15] troubleshooting
|
|
182
|
+
common issues
|
|
183
|
+
|
|
184
|
+
[16] roadmap
|
|
185
|
+
future direction
|
|
186
|
+
|
|
187
|
+
[17] acknowledgments
|
|
188
|
+
credits and thanks
|
|
189
|
+
|
|
190
|
+
[18] performance
|
|
191
|
+
benchmarks, metrics
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
section anti-patterns
|
|
195
|
+
|
|
196
|
+
avoid these common mistakes:
|
|
197
|
+
|
|
198
|
+
[x] starting with history or philosophy
|
|
199
|
+
users care about what it does, not its origin story
|
|
200
|
+
|
|
201
|
+
[x] burying the lead
|
|
202
|
+
the first paragraph must explain the project
|
|
203
|
+
|
|
204
|
+
[x] missing installation instructions
|
|
205
|
+
the most common question users have
|
|
206
|
+
|
|
207
|
+
[x] outdated examples
|
|
208
|
+
code that doesn't work creates frustration
|
|
209
|
+
|
|
210
|
+
[x] wall of text
|
|
211
|
+
break it up with headers, lists, code blocks
|
|
212
|
+
|
|
213
|
+
[x] jargon without explanation
|
|
214
|
+
not everyone knows your technical terms
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
PHASE 3: TITLE AND TAGLINE
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
the title
|
|
221
|
+
|
|
222
|
+
rules for great titles:
|
|
223
|
+
|
|
224
|
+
[1] match the package name exactly
|
|
225
|
+
consistency helps users find and remember
|
|
226
|
+
|
|
227
|
+
[2] use the actual project name
|
|
228
|
+
dont add "project" or other filler words
|
|
229
|
+
|
|
230
|
+
[3] capitalize properly
|
|
231
|
+
follow project conventions (Title Case, camelCase, etc.)
|
|
232
|
+
|
|
233
|
+
examples:
|
|
234
|
+
|
|
235
|
+
[ok] # Kollabor CLI
|
|
236
|
+
[ok] # pandas
|
|
237
|
+
[ok] # tailwindcss
|
|
238
|
+
|
|
239
|
+
[warn] # Kollabor CLI Project
|
|
240
|
+
[warn] # The pandas Data Analysis Library
|
|
241
|
+
[warn] # A CLI Tool
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
the tagline
|
|
245
|
+
|
|
246
|
+
one line that answers "what is this and why should I care?"
|
|
247
|
+
|
|
248
|
+
formula: [what] + [value] + [differentiator]
|
|
249
|
+
|
|
250
|
+
examples:
|
|
251
|
+
|
|
252
|
+
[ok] A terminal-based chat interface for LLMs with plugin architecture
|
|
253
|
+
[ok] Fast, reliable, and secure distributed task queue
|
|
254
|
+
[ok] Python data analysis library built for speed and ease of use
|
|
255
|
+
|
|
256
|
+
[warn] A chat interface for talking to AI
|
|
257
|
+
[warn] A task queue that is fast and reliable
|
|
258
|
+
|
|
259
|
+
tagline checklist:
|
|
260
|
+
|
|
261
|
+
[ ] under 80 characters
|
|
262
|
+
[ ] mentions what it is
|
|
263
|
+
[ ] hints at key benefit
|
|
264
|
+
[ ] distinguishes from alternatives
|
|
265
|
+
[ ] uses active voice
|
|
266
|
+
[ ] avoids buzzwords unless essential
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
PHASE 4: PROJECT STATUS BADGES
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
why badges matter
|
|
273
|
+
|
|
274
|
+
badges provide instant information:
|
|
275
|
+
- build status (is the project working?)
|
|
276
|
+
- version (what's the current release?)
|
|
277
|
+
- license (can I use this?)
|
|
278
|
+
- coverage (how well is it tested?)
|
|
279
|
+
- popularity (is anyone using this?)
|
|
280
|
+
- freshness (is it maintained?)
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
essential badges
|
|
284
|
+
|
|
285
|
+
every project should have these minimum badges:
|
|
286
|
+
|
|
287
|
+
[1] license badge
|
|
288
|
+
required for legal clarity
|
|
289
|
+
|
|
290
|
+
[2] version badge
|
|
291
|
+
shows latest release
|
|
292
|
+
|
|
293
|
+
[3] build/ci badge
|
|
294
|
+
shows current build status
|
|
295
|
+
|
|
296
|
+
[4] python version / platform badge
|
|
297
|
+
compatibility information
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
badge sources
|
|
301
|
+
|
|
302
|
+
shields.io - most versatile:
|
|
303
|
+
https://shields.io
|
|
304
|
+
|
|
305
|
+
common badge patterns:
|
|
306
|
+
|
|
307
|
+
license:
|
|
308
|
+
https://img.shields.io/github/license/[user]/[repo]
|
|
309
|
+
example: https://img.shields.io/github/license/kollaborai/kollabor-cli
|
|
310
|
+
|
|
311
|
+
version (pypi):
|
|
312
|
+
https://img.shields.io/pypi/v/[package]
|
|
313
|
+
example: https://img.shields.io/pypi/v/kollabor
|
|
314
|
+
|
|
315
|
+
version (github release):
|
|
316
|
+
https://img.shields.io/github/v/release/[user]/[repo]
|
|
317
|
+
example: https://img.shields.io/github/v/release/kollaborai/kollabor-cli
|
|
318
|
+
|
|
319
|
+
build status (github actions):
|
|
320
|
+
https://img.shields.io/github/actions/workflow/status/[user]/[repo]/[workflow].yml
|
|
321
|
+
example: https://img.shields.io/github/actions/workflow/status/kollaborai/kollabor-cli/tests.yml
|
|
322
|
+
|
|
323
|
+
coverage:
|
|
324
|
+
https://img.shields.io/codecov/c/github/[user]/[repo]
|
|
325
|
+
example: https://img.shields.io/codecov/c/github/kollaborai/kollabor-cli
|
|
326
|
+
|
|
327
|
+
python version:
|
|
328
|
+
https://img.shields.io/pypi/pyversions/[package]
|
|
329
|
+
example: https://img.shields.io/pypi/pyversions/kollabor
|
|
330
|
+
|
|
331
|
+
downloads:
|
|
332
|
+
https://img.shields.io/pypi/dm/[package]
|
|
333
|
+
example: https://img.shields.io/pypi/dm/kollabor
|
|
334
|
+
|
|
335
|
+
code style:
|
|
336
|
+
https://img.shields.io/badge/code%20style-black-000000
|
|
337
|
+
example: https://img.shields.io/badge/code%20style-black-000000
|
|
338
|
+
|
|
339
|
+
|
|
340
|
+
badge formatting
|
|
341
|
+
|
|
342
|
+
in markdown:
|
|
343
|
+
|
|
344
|
+
[](link target)
|
|
345
|
+
|
|
346
|
+
example:
|
|
347
|
+
|
|
348
|
+
[](https://opensource.org/licenses/MIT)
|
|
349
|
+
[](https://pypi.org/project/kollabor/)
|
|
350
|
+
[](https://github.com/kollaborai/kollabor-cli/actions)
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
badge organization
|
|
354
|
+
|
|
355
|
+
group badges at the top, under the title:
|
|
356
|
+
|
|
357
|
+
# Project Name
|
|
358
|
+
|
|
359
|
+
[badge1] [badge2] [badge3] [badge4]
|
|
360
|
+
|
|
361
|
+
Tagline text here...
|
|
362
|
+
|
|
363
|
+
don't overdo it:
|
|
364
|
+
- 3-6 badges is optimal
|
|
365
|
+
- more than 8 creates badge clutter
|
|
366
|
+
- prioritize: license, version, build, then others
|
|
367
|
+
|
|
368
|
+
|
|
369
|
+
PHASE 5: THE QUICK START SECTION
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
purpose of quick start
|
|
373
|
+
|
|
374
|
+
get users to "hello world" as fast as possible.
|
|
375
|
+
this is the most important section.
|
|
376
|
+
|
|
377
|
+
target: under 30 seconds from copy to running code
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
quick start structure
|
|
381
|
+
|
|
382
|
+
[1] prerequisites
|
|
383
|
+
what they need before starting
|
|
384
|
+
|
|
385
|
+
[2] install command
|
|
386
|
+
single command if possible
|
|
387
|
+
|
|
388
|
+
[3] minimal example
|
|
389
|
+
smallest working code
|
|
390
|
+
|
|
391
|
+
[4] expected output
|
|
392
|
+
what they should see
|
|
393
|
+
|
|
394
|
+
[5] next step link
|
|
395
|
+
where to go from here
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
quick start examples
|
|
399
|
+
|
|
400
|
+
cli application:
|
|
401
|
+
|
|
402
|
+
Quick Start
|
|
403
|
+
|
|
404
|
+
Install via pip:
|
|
405
|
+
pip install kollabor
|
|
406
|
+
|
|
407
|
+
Start chatting:
|
|
408
|
+
kollab
|
|
409
|
+
|
|
410
|
+
For pipe mode:
|
|
411
|
+
echo "Explain async/await" | kollab -p
|
|
412
|
+
|
|
413
|
+
Read the docs: https://docs.kollabor.ai
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
python library:
|
|
417
|
+
|
|
418
|
+
Quick Start
|
|
419
|
+
|
|
420
|
+
Install:
|
|
421
|
+
pip install dataprocessor
|
|
422
|
+
|
|
423
|
+
Process data:
|
|
424
|
+
from dataprocessor import clean
|
|
425
|
+
|
|
426
|
+
data = clean(raw_data)
|
|
427
|
+
print(data.head())
|
|
428
|
+
|
|
429
|
+
Full documentation: https://dataprocessor.dev/docs
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
web application:
|
|
433
|
+
|
|
434
|
+
Quick Start
|
|
435
|
+
|
|
436
|
+
Clone and run:
|
|
437
|
+
git clone https://github.com/user/project.git
|
|
438
|
+
cd project
|
|
439
|
+
npm install
|
|
440
|
+
npm start
|
|
441
|
+
|
|
442
|
+
Open http://localhost:3000
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
quick start anti-patterns
|
|
446
|
+
|
|
447
|
+
avoid:
|
|
448
|
+
|
|
449
|
+
[x] multiple installation methods
|
|
450
|
+
pick one primary method, link to alternatives
|
|
451
|
+
|
|
452
|
+
[x] extensive configuration
|
|
453
|
+
quick start should use sensible defaults
|
|
454
|
+
|
|
455
|
+
[x] optional steps
|
|
456
|
+
save options for the installation section
|
|
457
|
+
|
|
458
|
+
[x] missing prerequisites
|
|
459
|
+
nothing worse than failing on step 1
|
|
460
|
+
|
|
461
|
+
[x] outdated commands
|
|
462
|
+
test your quick start in a fresh environment
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
PHASE 6: INSTALLATION SECTION
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
comprehensive installation
|
|
469
|
+
|
|
470
|
+
cover all installation methods thoroughly:
|
|
471
|
+
|
|
472
|
+
[1] primary method (most common)
|
|
473
|
+
[2] alternative methods
|
|
474
|
+
[3] development installation
|
|
475
|
+
[4] platform-specific notes
|
|
476
|
+
[5] troubleshooting
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
installation template
|
|
480
|
+
|
|
481
|
+
Installation
|
|
482
|
+
|
|
483
|
+
Stable Release
|
|
484
|
+
|
|
485
|
+
pip install kollabor
|
|
486
|
+
|
|
487
|
+
Development Version
|
|
488
|
+
|
|
489
|
+
pip install git+https://github.com/kollaborai/kollabor-cli.git
|
|
490
|
+
|
|
491
|
+
From Source
|
|
492
|
+
|
|
493
|
+
git clone https://github.com/kollaborai/kollabor-cli.git
|
|
494
|
+
cd kollabor-cli
|
|
495
|
+
pip install -e .
|
|
496
|
+
|
|
497
|
+
Requirements
|
|
498
|
+
|
|
499
|
+
Python 3.12 or higher
|
|
500
|
+
|
|
501
|
+
|
|
502
|
+
development installation
|
|
503
|
+
|
|
504
|
+
for contributors:
|
|
505
|
+
|
|
506
|
+
Development Setup
|
|
507
|
+
|
|
508
|
+
1. Clone the repository:
|
|
509
|
+
git clone https://github.com/kollaborai/kollabor-cli.git
|
|
510
|
+
cd kollabor-cli
|
|
511
|
+
|
|
512
|
+
2. Create a virtual environment:
|
|
513
|
+
python -m venv venv
|
|
514
|
+
source venv/bin/activate # On Windows: venv\Scripts\activate
|
|
515
|
+
|
|
516
|
+
3. Install with development dependencies:
|
|
517
|
+
pip install -e ".[dev]"
|
|
518
|
+
|
|
519
|
+
4. Run tests:
|
|
520
|
+
python -m pytest
|
|
521
|
+
|
|
522
|
+
See CONTRIBUTING.md for details.
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
platform-specific notes
|
|
526
|
+
|
|
527
|
+
Platform Support
|
|
528
|
+
|
|
529
|
+
Linux: Fully supported
|
|
530
|
+
macOS: Fully supported
|
|
531
|
+
Windows: Supported with WSL or native Python
|
|
532
|
+
|
|
533
|
+
Windows users may need additional setup:
|
|
534
|
+
- Install Visual C++ Build Tools for compilation
|
|
535
|
+
- Use WSL2 for best experience
|
|
536
|
+
|
|
537
|
+
|
|
538
|
+
dependency troubleshooting
|
|
539
|
+
|
|
540
|
+
Troubleshooting Installation
|
|
541
|
+
|
|
542
|
+
Permission denied?
|
|
543
|
+
Use a virtual environment or --user flag:
|
|
544
|
+
pip install --user kollabor
|
|
545
|
+
|
|
546
|
+
SSL certificate errors?
|
|
547
|
+
pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org kollabor
|
|
548
|
+
|
|
549
|
+
Build failures?
|
|
550
|
+
Install build tools first:
|
|
551
|
+
# Ubuntu/Debian
|
|
552
|
+
sudo apt-get install python3-dev build-essential
|
|
553
|
+
|
|
554
|
+
# macOS
|
|
555
|
+
xcode-select --install
|
|
556
|
+
|
|
557
|
+
|
|
558
|
+
PHASE 7: USAGE SECTION
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
usage patterns
|
|
562
|
+
|
|
563
|
+
show how the project is used in real scenarios:
|
|
564
|
+
|
|
565
|
+
[1] basic usage
|
|
566
|
+
simplest possible example
|
|
567
|
+
|
|
568
|
+
[2] common use cases
|
|
569
|
+
typical scenarios users encounter
|
|
570
|
+
|
|
571
|
+
[3] advanced usage
|
|
572
|
+
power user features
|
|
573
|
+
|
|
574
|
+
[4] configuration
|
|
575
|
+
customization options
|
|
576
|
+
|
|
577
|
+
|
|
578
|
+
basic usage example
|
|
579
|
+
|
|
580
|
+
Usage
|
|
581
|
+
|
|
582
|
+
Command Line
|
|
583
|
+
|
|
584
|
+
Basic chat:
|
|
585
|
+
kollab
|
|
586
|
+
|
|
587
|
+
Single query:
|
|
588
|
+
kollab "Explain quantum computing"
|
|
589
|
+
|
|
590
|
+
Pipe mode:
|
|
591
|
+
cat document.txt | kollab -p
|
|
592
|
+
|
|
593
|
+
Python API
|
|
594
|
+
|
|
595
|
+
from kollabor import ChatClient
|
|
596
|
+
|
|
597
|
+
client = ChatClient()
|
|
598
|
+
response = client.chat("Hello, AI!")
|
|
599
|
+
print(response.message)
|
|
600
|
+
|
|
601
|
+
|
|
602
|
+
use case catalog
|
|
603
|
+
|
|
604
|
+
Common Use Cases
|
|
605
|
+
|
|
606
|
+
Code Review
|
|
607
|
+
kollab "Review this code: <paste code>"
|
|
608
|
+
|
|
609
|
+
Documentation Generation
|
|
610
|
+
kollab "Write API docs for: <paste code>"
|
|
611
|
+
|
|
612
|
+
Learning
|
|
613
|
+
kollab "Explain how async/await works in Python"
|
|
614
|
+
|
|
615
|
+
Debugging
|
|
616
|
+
kollab "I'm getting error X. What does it mean?"
|
|
617
|
+
|
|
618
|
+
|
|
619
|
+
advanced usage
|
|
620
|
+
|
|
621
|
+
Advanced Usage
|
|
622
|
+
|
|
623
|
+
Custom System Prompt
|
|
624
|
+
export KOLLABOR_SYSTEM_PROMPT="You are a Rust expert..."
|
|
625
|
+
|
|
626
|
+
Multiple Providers
|
|
627
|
+
kollab --provider openai --model gpt-4
|
|
628
|
+
|
|
629
|
+
Session Management
|
|
630
|
+
kollab --session my-project --persist
|
|
631
|
+
|
|
632
|
+
|
|
633
|
+
configuration section
|
|
634
|
+
|
|
635
|
+
Configuration
|
|
636
|
+
|
|
637
|
+
Config file location: ~/.kollabor-cli/config.json
|
|
638
|
+
|
|
639
|
+
Default config:
|
|
640
|
+
{
|
|
641
|
+
"core.llm.provider": "openai",
|
|
642
|
+
"core.llm.model": "gpt-4",
|
|
643
|
+
"terminal.color_mode": "auto"
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
Environment variables:
|
|
647
|
+
KOLLABOR_API_KEY - API key for LLM provider
|
|
648
|
+
KOLLABOR_SYSTEM_PROMPT - Custom system prompt
|
|
649
|
+
KOLLABOR_CONFIG_DIR - Alternative config directory
|
|
650
|
+
|
|
651
|
+
|
|
652
|
+
PHASE 8: FEATURES SECTION
|
|
653
|
+
|
|
654
|
+
|
|
655
|
+
writing effective features
|
|
656
|
+
|
|
657
|
+
each feature should:
|
|
658
|
+
[1] start with a verb
|
|
659
|
+
[2] describe a benefit, not just a capability
|
|
660
|
+
[3] be specific and concrete
|
|
661
|
+
[4] be scannable (short lines)
|
|
662
|
+
|
|
663
|
+
features template
|
|
664
|
+
|
|
665
|
+
Features
|
|
666
|
+
|
|
667
|
+
Plugin Architecture
|
|
668
|
+
- Extensible hook system for custom behavior
|
|
669
|
+
- Dynamic plugin discovery and loading
|
|
670
|
+
- SDK for plugin development
|
|
671
|
+
|
|
672
|
+
Terminal UI
|
|
673
|
+
- Real-time streaming responses
|
|
674
|
+
- Multi-line input with visual editor
|
|
675
|
+
- Syntax highlighting for code blocks
|
|
676
|
+
- Status indicators for system state
|
|
677
|
+
|
|
678
|
+
LLM Integration
|
|
679
|
+
- Support for multiple providers (OpenAI, Anthropic, etc.)
|
|
680
|
+
- Automatic rate limiting and retries
|
|
681
|
+
- Tool/function calling support
|
|
682
|
+
- Conversation history management
|
|
683
|
+
|
|
684
|
+
Developer Experience
|
|
685
|
+
- Pipe mode for scripting
|
|
686
|
+
- Configurable system prompts
|
|
687
|
+
- Markdown export
|
|
688
|
+
- Comprehensive logging
|
|
689
|
+
|
|
690
|
+
|
|
691
|
+
feature anti-patterns
|
|
692
|
+
|
|
693
|
+
avoid:
|
|
694
|
+
|
|
695
|
+
[x] technical jargon without explanation
|
|
696
|
+
"Plugin architecture" vs "Extensible via plugins"
|
|
697
|
+
|
|
698
|
+
[x] vague claims
|
|
699
|
+
"Fast performance" vs "Processes 10K requests/second"
|
|
700
|
+
|
|
701
|
+
[x] internal implementation details
|
|
702
|
+
"Uses async/await" is not a user-facing feature
|
|
703
|
+
|
|
704
|
+
[x] marketing fluff
|
|
705
|
+
"Revolutionary", "Cutting-edge", "World-class"
|
|
706
|
+
|
|
707
|
+
|
|
708
|
+
PHASE 9: DOCUMENTATION LINKS
|
|
709
|
+
|
|
710
|
+
|
|
711
|
+
link strategy
|
|
712
|
+
|
|
713
|
+
your README is the entry point, not the complete docs.
|
|
714
|
+
|
|
715
|
+
link out to:
|
|
716
|
+
|
|
717
|
+
[1] full documentation
|
|
718
|
+
[2] api reference
|
|
719
|
+
[3] tutorials/guides
|
|
720
|
+
[4] examples
|
|
721
|
+
[5] migration guides
|
|
722
|
+
[6] changelog
|
|
723
|
+
|
|
724
|
+
|
|
725
|
+
documentation section
|
|
726
|
+
|
|
727
|
+
Documentation
|
|
728
|
+
|
|
729
|
+
Full Docs
|
|
730
|
+
https://kollabor.dev/docs
|
|
731
|
+
|
|
732
|
+
API Reference
|
|
733
|
+
https://kollabor.dev/docs/api
|
|
734
|
+
|
|
735
|
+
Tutorials
|
|
736
|
+
- Getting Started: https://kollabor.dev/docs/getting-started
|
|
737
|
+
- Plugin Development: https://kollabor.dev/docs/plugins
|
|
738
|
+
- Configuration: https://kollabor.dev/docs/config
|
|
739
|
+
|
|
740
|
+
Examples
|
|
741
|
+
https://kollabor.dev/examples
|
|
742
|
+
|
|
743
|
+
Changelog
|
|
744
|
+
https://kollabor.dev/docs/changelog
|
|
745
|
+
|
|
746
|
+
|
|
747
|
+
when docs don't exist
|
|
748
|
+
|
|
749
|
+
if you don't have separate docs:
|
|
750
|
+
|
|
751
|
+
Documentation
|
|
752
|
+
|
|
753
|
+
See the docs/ directory for:
|
|
754
|
+
- ARCHITECTURE.md - System design
|
|
755
|
+
- CONTRIBUTING.md - Development guide
|
|
756
|
+
- plugins/README.md - Plugin examples
|
|
757
|
+
|
|
758
|
+
|
|
759
|
+
PHASE 10: CONTRIBUTING SECTION
|
|
760
|
+
|
|
761
|
+
|
|
762
|
+
contributing goals
|
|
763
|
+
|
|
764
|
+
encourage contributions while setting expectations:
|
|
765
|
+
|
|
766
|
+
[1] how to contribute
|
|
767
|
+
[2] what contributions are welcome
|
|
768
|
+
[3] development setup
|
|
769
|
+
[4] code standards
|
|
770
|
+
[5] submission process
|
|
771
|
+
|
|
772
|
+
|
|
773
|
+
contributing template
|
|
774
|
+
|
|
775
|
+
Contributing
|
|
776
|
+
|
|
777
|
+
We welcome contributions!
|
|
778
|
+
|
|
779
|
+
What to Contribute
|
|
780
|
+
|
|
781
|
+
- Bug fixes
|
|
782
|
+
- Feature implementations
|
|
783
|
+
- Documentation improvements
|
|
784
|
+
- Plugin examples
|
|
785
|
+
- Bug reports and feature requests
|
|
786
|
+
|
|
787
|
+
Getting Started
|
|
788
|
+
|
|
789
|
+
1. Fork the repository
|
|
790
|
+
2. Create a branch: git checkout -b feature/my-feature
|
|
791
|
+
3. Install development dependencies: pip install -e ".[dev]"
|
|
792
|
+
4. Make your changes
|
|
793
|
+
5. Run tests: python -m pytest
|
|
794
|
+
6. Submit a pull request
|
|
795
|
+
|
|
796
|
+
Code Style
|
|
797
|
+
|
|
798
|
+
- Follow PEP 8
|
|
799
|
+
- Run black: python -m black .
|
|
800
|
+
- Add tests for new features
|
|
801
|
+
- Update documentation
|
|
802
|
+
|
|
803
|
+
Pull Request Guidelines
|
|
804
|
+
|
|
805
|
+
- Link to related issues
|
|
806
|
+
- Describe your changes
|
|
807
|
+
- Ensure all tests pass
|
|
808
|
+
- Update docs as needed
|
|
809
|
+
|
|
810
|
+
Get Help
|
|
811
|
+
|
|
812
|
+
- Open an issue for questions
|
|
813
|
+
- Join our Discord: https://discord.gg/...
|
|
814
|
+
- Email: maintainers@example.com
|
|
815
|
+
|
|
816
|
+
|
|
817
|
+
alternatives
|
|
818
|
+
|
|
819
|
+
for simpler projects, keep it brief:
|
|
820
|
+
|
|
821
|
+
Contributing
|
|
822
|
+
|
|
823
|
+
Contributions welcome! Please read CONTRIBUTING.md for details.
|
|
824
|
+
|
|
825
|
+
Quick start:
|
|
826
|
+
git clone https://github.com/user/repo.git
|
|
827
|
+
cd repo
|
|
828
|
+
pip install -e ".[dev]"
|
|
829
|
+
python -m pytest
|
|
830
|
+
|
|
831
|
+
|
|
832
|
+
PHASE 11: SUPPORT AND COMMUNITY
|
|
833
|
+
|
|
834
|
+
|
|
835
|
+
support channels
|
|
836
|
+
|
|
837
|
+
give users a path to get help:
|
|
838
|
+
|
|
839
|
+
Support
|
|
840
|
+
|
|
841
|
+
Getting Help
|
|
842
|
+
|
|
843
|
+
- Documentation: https://project.dev/docs
|
|
844
|
+
- Issues: https://github.com/user/repo/issues
|
|
845
|
+
- Discussions: https://github.com/user/repo/discussions
|
|
846
|
+
|
|
847
|
+
Reporting Bugs
|
|
848
|
+
|
|
849
|
+
Before reporting, search existing issues.
|
|
850
|
+
When reporting, include:
|
|
851
|
+
- Python/version
|
|
852
|
+
- Minimal reproduction
|
|
853
|
+
- Error messages
|
|
854
|
+
- Expected vs actual behavior
|
|
855
|
+
|
|
856
|
+
Feature Requests
|
|
857
|
+
|
|
858
|
+
We welcome feature requests!
|
|
859
|
+
Please explain:
|
|
860
|
+
- The use case
|
|
861
|
+
- Why existing solutions don't work
|
|
862
|
+
- Proposed solution (optional)
|
|
863
|
+
|
|
864
|
+
|
|
865
|
+
community guidelines
|
|
866
|
+
|
|
867
|
+
if you have a community:
|
|
868
|
+
|
|
869
|
+
Community
|
|
870
|
+
|
|
871
|
+
Code of Conduct
|
|
872
|
+
|
|
873
|
+
Be respectful. See CODE_OF_CONDUCT.md for details.
|
|
874
|
+
|
|
875
|
+
Communication Channels
|
|
876
|
+
|
|
877
|
+
- Discord: https://discord.gg/...
|
|
878
|
+
- Twitter: @project
|
|
879
|
+
- Blog: https://blog.project.dev
|
|
880
|
+
|
|
881
|
+
|
|
882
|
+
PHASE 12: PROJECT STATUS AND ROADMAP
|
|
883
|
+
|
|
884
|
+
|
|
885
|
+
status section
|
|
886
|
+
|
|
887
|
+
be honest about project state:
|
|
888
|
+
|
|
889
|
+
Project Status
|
|
890
|
+
|
|
891
|
+
Stability: Beta
|
|
892
|
+
|
|
893
|
+
This project is under active development.
|
|
894
|
+
APIs may change between versions.
|
|
895
|
+
|
|
896
|
+
What's Ready
|
|
897
|
+
- Core chat functionality
|
|
898
|
+
- Plugin system
|
|
899
|
+
- Multi-provider support
|
|
900
|
+
|
|
901
|
+
What's Experimental
|
|
902
|
+
- MCP integration
|
|
903
|
+
- Custom UI themes
|
|
904
|
+
- Voice input
|
|
905
|
+
|
|
906
|
+
Production Use
|
|
907
|
+
Not recommended for production use yet.
|
|
908
|
+
Track issues for progress.
|
|
909
|
+
|
|
910
|
+
|
|
911
|
+
roadmap section
|
|
912
|
+
|
|
913
|
+
show where the project is going:
|
|
914
|
+
|
|
915
|
+
Roadmap
|
|
916
|
+
|
|
917
|
+
v1.0 (Q1 2025)
|
|
918
|
+
- Stable API
|
|
919
|
+
- Comprehensive documentation
|
|
920
|
+
- Performance benchmarks
|
|
921
|
+
|
|
922
|
+
v1.1 (Q2 2025)
|
|
923
|
+
- Web UI
|
|
924
|
+
- Team collaboration features
|
|
925
|
+
- Conversation sharing
|
|
926
|
+
|
|
927
|
+
v2.0 (Q3 2025)
|
|
928
|
+
- Multi-language support
|
|
929
|
+
- Local LLM support
|
|
930
|
+
- Mobile apps
|
|
931
|
+
|
|
932
|
+
See milestones for progress.
|
|
933
|
+
|
|
934
|
+
|
|
935
|
+
PHASE 13: ACKNOWLEDGMENTS AND LICENSE
|
|
936
|
+
|
|
937
|
+
|
|
938
|
+
acknowledgments
|
|
939
|
+
|
|
940
|
+
give credit where due:
|
|
941
|
+
|
|
942
|
+
Acknowledgments
|
|
943
|
+
|
|
944
|
+
This project builds upon excellent work:
|
|
945
|
+
|
|
946
|
+
- Rich library for terminal UI
|
|
947
|
+
- Prompt Toolkit for input handling
|
|
948
|
+
- OpenAI for API inspiration
|
|
949
|
+
|
|
950
|
+
Special thanks to contributors:
|
|
951
|
+
- @user1 - Plugin system design
|
|
952
|
+
- @user2 - Documentation improvements
|
|
953
|
+
- @user3 - Bug fixes
|
|
954
|
+
|
|
955
|
+
Sponsored by: Organization Name
|
|
956
|
+
|
|
957
|
+
|
|
958
|
+
license section
|
|
959
|
+
|
|
960
|
+
keep it simple and clear:
|
|
961
|
+
|
|
962
|
+
License
|
|
963
|
+
|
|
964
|
+
MIT License
|
|
965
|
+
|
|
966
|
+
Copyright (c) 2024 Project Authors
|
|
967
|
+
|
|
968
|
+
Permission is hereby granted...
|
|
969
|
+
|
|
970
|
+
Or simpler:
|
|
971
|
+
|
|
972
|
+
MIT - see LICENSE file for details.
|
|
973
|
+
|
|
974
|
+
[](https://opensource.org/licenses/MIT)
|
|
975
|
+
|
|
976
|
+
|
|
977
|
+
PHASE 14: README TEMPLATES BY PROJECT TYPE
|
|
978
|
+
|
|
979
|
+
|
|
980
|
+
python library template
|
|
981
|
+
|
|
982
|
+
# [package-name]
|
|
983
|
+
|
|
984
|
+
[badges]
|
|
985
|
+
|
|
986
|
+
[tagline]
|
|
987
|
+
|
|
988
|
+
Features
|
|
989
|
+
|
|
990
|
+
- [feature 1]
|
|
991
|
+
- [feature 2]
|
|
992
|
+
- [feature 3]
|
|
993
|
+
|
|
994
|
+
Installation
|
|
995
|
+
|
|
996
|
+
pip install [package-name]
|
|
997
|
+
|
|
998
|
+
Quick Start
|
|
999
|
+
|
|
1000
|
+
from [package] import [main_class]
|
|
1001
|
+
|
|
1002
|
+
[example code]
|
|
1003
|
+
|
|
1004
|
+
Documentation
|
|
1005
|
+
|
|
1006
|
+
[docs link]
|
|
1007
|
+
|
|
1008
|
+
Contributing
|
|
1009
|
+
|
|
1010
|
+
[contributing info]
|
|
1011
|
+
|
|
1012
|
+
License
|
|
1013
|
+
|
|
1014
|
+
[license]
|
|
1015
|
+
|
|
1016
|
+
|
|
1017
|
+
cli application template
|
|
1018
|
+
|
|
1019
|
+
# [app-name]
|
|
1020
|
+
|
|
1021
|
+
[badges]
|
|
1022
|
+
|
|
1023
|
+
[tagline]
|
|
1024
|
+
|
|
1025
|
+
## Features
|
|
1026
|
+
|
|
1027
|
+
- [feature 1]
|
|
1028
|
+
- [feature 2]
|
|
1029
|
+
- [feature 3]
|
|
1030
|
+
|
|
1031
|
+
## Installation
|
|
1032
|
+
|
|
1033
|
+
pip install [app-name]
|
|
1034
|
+
|
|
1035
|
+
## Quick Start
|
|
1036
|
+
|
|
1037
|
+
[app-name] [command]
|
|
1038
|
+
|
|
1039
|
+
## Usage
|
|
1040
|
+
|
|
1041
|
+
Basic:
|
|
1042
|
+
[app-name] [basic-usage]
|
|
1043
|
+
|
|
1044
|
+
Advanced:
|
|
1045
|
+
[app-name] [flags]
|
|
1046
|
+
|
|
1047
|
+
## Documentation
|
|
1048
|
+
|
|
1049
|
+
[docs link]
|
|
1050
|
+
|
|
1051
|
+
## Contributing
|
|
1052
|
+
|
|
1053
|
+
[contributing info]
|
|
1054
|
+
|
|
1055
|
+
## License
|
|
1056
|
+
|
|
1057
|
+
[license]
|
|
1058
|
+
|
|
1059
|
+
|
|
1060
|
+
web application template
|
|
1061
|
+
|
|
1062
|
+
# [app-name]
|
|
1063
|
+
|
|
1064
|
+
[badges]
|
|
1065
|
+
|
|
1066
|
+
[tagline]
|
|
1067
|
+
|
|
1068
|
+
## Features
|
|
1069
|
+
|
|
1070
|
+
- [feature 1]
|
|
1071
|
+
- [feature 2]
|
|
1072
|
+
- [feature 3]
|
|
1073
|
+
|
|
1074
|
+
## Quick Start
|
|
1075
|
+
|
|
1076
|
+
docker run -p 3000:3000 [image-name]
|
|
1077
|
+
|
|
1078
|
+
Or:
|
|
1079
|
+
|
|
1080
|
+
git clone [repo]
|
|
1081
|
+
cd [app-name]
|
|
1082
|
+
npm install
|
|
1083
|
+
npm start
|
|
1084
|
+
|
|
1085
|
+
## Development
|
|
1086
|
+
|
|
1087
|
+
npm install
|
|
1088
|
+
npm run dev
|
|
1089
|
+
|
|
1090
|
+
## Configuration
|
|
1091
|
+
|
|
1092
|
+
[config details]
|
|
1093
|
+
|
|
1094
|
+
## Documentation
|
|
1095
|
+
|
|
1096
|
+
[docs link]
|
|
1097
|
+
|
|
1098
|
+
## Contributing
|
|
1099
|
+
|
|
1100
|
+
[contributing info]
|
|
1101
|
+
|
|
1102
|
+
## License
|
|
1103
|
+
|
|
1104
|
+
[license]
|
|
1105
|
+
|
|
1106
|
+
|
|
1107
|
+
PHASE 15: README QUALITY CHECKLIST
|
|
1108
|
+
|
|
1109
|
+
|
|
1110
|
+
before finalizing your README, verify:
|
|
1111
|
+
|
|
1112
|
+
[ ] title matches project name exactly
|
|
1113
|
+
[ ] tagline explains what and why in one line
|
|
1114
|
+
[ ] badges load correctly (click to test)
|
|
1115
|
+
[ ] quick start works from scratch
|
|
1116
|
+
[ ] installation commands tested on fresh system
|
|
1117
|
+
[ ] code examples are runnable
|
|
1118
|
+
[ ] all links work
|
|
1119
|
+
[ ] sections are in logical order
|
|
1120
|
+
[ ] no typos or grammatical errors
|
|
1121
|
+
[ ] consistent formatting throughout
|
|
1122
|
+
[ ] project status is clear
|
|
1123
|
+
[ ] license is specified
|
|
1124
|
+
[ ] support info is present
|
|
1125
|
+
|
|
1126
|
+
|
|
1127
|
+
testing your README
|
|
1128
|
+
|
|
1129
|
+
actually test what you wrote:
|
|
1130
|
+
|
|
1131
|
+
<terminal># create fresh environment</terminal>
|
|
1132
|
+
<terminal>python -m venv test_readme</terminal>
|
|
1133
|
+
<terminal>source test_readme/bin/activate</terminal>
|
|
1134
|
+
<terminal># follow your own quick start exactly</terminal>
|
|
1135
|
+
<terminal># does it work?</terminal>
|
|
1136
|
+
|
|
1137
|
+
|
|
1138
|
+
PHASE 16: COMMON ANTI-PATTERNS
|
|
1139
|
+
|
|
1140
|
+
|
|
1141
|
+
anti-pattern: wall of text
|
|
1142
|
+
|
|
1143
|
+
problem: huge paragraphs users won't read
|
|
1144
|
+
|
|
1145
|
+
solution: use lists, headers, code blocks
|
|
1146
|
+
|
|
1147
|
+
before:
|
|
1148
|
+
This project is a terminal-based chat application that allows you to interact
|
|
1149
|
+
with large language models through a command line interface and includes a
|
|
1150
|
+
plugin system for extensibility and supports multiple providers...
|
|
1151
|
+
|
|
1152
|
+
after:
|
|
1153
|
+
Kollabor CLI is a terminal-based chat interface for LLMs.
|
|
1154
|
+
|
|
1155
|
+
Key features:
|
|
1156
|
+
- Plugin architecture for extensibility
|
|
1157
|
+
- Multi-provider support (OpenAI, Anthropic, etc.)
|
|
1158
|
+
- Pipe mode for scripting
|
|
1159
|
+
|
|
1160
|
+
|
|
1161
|
+
anti-pattern: missing quick start
|
|
1162
|
+
|
|
1163
|
+
problem: users must read entire README to start
|
|
1164
|
+
|
|
1165
|
+
solution: put quick start immediately after badges
|
|
1166
|
+
|
|
1167
|
+
structure:
|
|
1168
|
+
# Title
|
|
1169
|
+
[badges]
|
|
1170
|
+
[tagline]
|
|
1171
|
+
|
|
1172
|
+
## Quick Start
|
|
1173
|
+
[fastest path to running]
|
|
1174
|
+
|
|
1175
|
+
## Features
|
|
1176
|
+
...
|
|
1177
|
+
|
|
1178
|
+
|
|
1179
|
+
anti-pattern: assuming knowledge
|
|
1180
|
+
|
|
1181
|
+
problem: technical terms without explanation
|
|
1182
|
+
|
|
1183
|
+
solution: explain or link to explanations
|
|
1184
|
+
|
|
1185
|
+
before:
|
|
1186
|
+
Uses a hook system for extensibility...
|
|
1187
|
+
|
|
1188
|
+
after:
|
|
1189
|
+
Plugin system based on hooks - functions that run at specific points
|
|
1190
|
+
in the application lifecycle. See Plugin Development Guide for details.
|
|
1191
|
+
|
|
1192
|
+
|
|
1193
|
+
anti-pattern: outdated badges
|
|
1194
|
+
|
|
1195
|
+
problem: badges showing wrong status
|
|
1196
|
+
|
|
1197
|
+
solution: use dynamic badges that update automatically
|
|
1198
|
+
|
|
1199
|
+
[ok] https://img.shields.io/github/actions/workflow/status/...
|
|
1200
|
+
[x] https://img.shields.io/badge/status-passing-brightgreen (manual)
|
|
1201
|
+
|
|
1202
|
+
|
|
1203
|
+
anti-pattern: marketing language
|
|
1204
|
+
|
|
1205
|
+
problem: hype words that don't inform
|
|
1206
|
+
|
|
1207
|
+
solution: use specific, factual language
|
|
1208
|
+
|
|
1209
|
+
before:
|
|
1210
|
+
Revolutionary AI chat tool with world-class features...
|
|
1211
|
+
after:
|
|
1212
|
+
Terminal chat interface supporting OpenAI, Anthropic, and local models...
|
|
1213
|
+
|
|
1214
|
+
|
|
1215
|
+
PHASE 17: MAINTAINING YOUR README
|
|
1216
|
+
|
|
1217
|
+
|
|
1218
|
+
keep it current
|
|
1219
|
+
|
|
1220
|
+
your README should evolve with the project:
|
|
1221
|
+
|
|
1222
|
+
[ ] update badges when adding CI
|
|
1223
|
+
[ ] update version on each release
|
|
1224
|
+
[ ] add new features to features list
|
|
1225
|
+
[ ] update examples when API changes
|
|
1226
|
+
[ ] remove deprecated options
|
|
1227
|
+
[ ] update status as project matures
|
|
1228
|
+
|
|
1229
|
+
|
|
1230
|
+
README reviews
|
|
1231
|
+
|
|
1232
|
+
periodically review your README:
|
|
1233
|
+
|
|
1234
|
+
<terminal># ask yourself these questions</terminal>
|
|
1235
|
+
<terminal># 1. does the quick start still work?</terminal>
|
|
1236
|
+
<terminal># 2. are all links valid?</terminal>
|
|
1237
|
+
<terminal># 3. is the project status accurate?</terminal>
|
|
1238
|
+
<terminal># 4. would a new user understand this?</terminal>
|
|
1239
|
+
|
|
1240
|
+
|
|
1241
|
+
PHASE 18: README RULES (STRICT MODE)
|
|
1242
|
+
|
|
1243
|
+
|
|
1244
|
+
while this skill is active, these rules are MANDATORY:
|
|
1245
|
+
|
|
1246
|
+
[1] NEVER skip the quick start section
|
|
1247
|
+
users need to see value immediately
|
|
1248
|
+
if nothing else, include a one-liner example
|
|
1249
|
+
|
|
1250
|
+
[2] ALWAYS test your own quick start
|
|
1251
|
+
in a fresh environment
|
|
1252
|
+
if it doesn't work, fix the README or the code
|
|
1253
|
+
|
|
1254
|
+
[3] include badges for essential info
|
|
1255
|
+
license (required)
|
|
1256
|
+
version (if released)
|
|
1257
|
+
build status (if CI exists)
|
|
1258
|
+
|
|
1259
|
+
[4] lead with value, not history
|
|
1260
|
+
what it is and why it matters first
|
|
1261
|
+
project story comes later (if at all)
|
|
1262
|
+
|
|
1263
|
+
[5] use code fences for all examples
|
|
1264
|
+
readers must distinguish text from code
|
|
1265
|
+
specify language for syntax highlighting
|
|
1266
|
+
|
|
1267
|
+
[6] link only to existing content
|
|
1268
|
+
dont link to TODO docs
|
|
1269
|
+
either create the doc or remove the link
|
|
1270
|
+
|
|
1271
|
+
[7] update README with API changes
|
|
1272
|
+
examples must work with current version
|
|
1273
|
+
stale examples are worse than no examples
|
|
1274
|
+
|
|
1275
|
+
[8] keep it scannable
|
|
1276
|
+
use headers, lists, short paragraphs
|
|
1277
|
+
most users skim, they don't read word-for-word
|
|
1278
|
+
|
|
1279
|
+
[9] specify license clearly
|
|
1280
|
+
legal requirement for reuse
|
|
1281
|
+
include badge and SPDX identifier
|
|
1282
|
+
|
|
1283
|
+
[10] provide a way to get help
|
|
1284
|
+
issue tracker, email, discord
|
|
1285
|
+
users will have questions
|
|
1286
|
+
|
|
1287
|
+
|
|
1288
|
+
PHASE 19: README SESSION CHECKLIST
|
|
1289
|
+
|
|
1290
|
+
|
|
1291
|
+
before starting:
|
|
1292
|
+
|
|
1293
|
+
[ ] checked project type and language
|
|
1294
|
+
[ ] identified target audience
|
|
1295
|
+
[ ] reviewed existing documentation
|
|
1296
|
+
[ ] checked for existing README
|
|
1297
|
+
[ ] tested installation method
|
|
1298
|
+
|
|
1299
|
+
for each section:
|
|
1300
|
+
|
|
1301
|
+
[ ] title matches project name
|
|
1302
|
+
[ ] tagline is clear and concise
|
|
1303
|
+
[ ] badges load correctly
|
|
1304
|
+
[ ] quick start works from scratch
|
|
1305
|
+
[ ] installation is comprehensive
|
|
1306
|
+
[ ] usage examples are runnable
|
|
1307
|
+
[ ] features are specific and benefit-focused
|
|
1308
|
+
[ ] links all work
|
|
1309
|
+
[ ] status is accurate
|
|
1310
|
+
[ ] license is specified
|
|
1311
|
+
|
|
1312
|
+
after completing:
|
|
1313
|
+
|
|
1314
|
+
[ ] test entire README in fresh environment
|
|
1315
|
+
[ ] check all links
|
|
1316
|
+
[ ] verify badges render
|
|
1317
|
+
[ ] spell check
|
|
1318
|
+
[ ] get someone else to review it
|
|
1319
|
+
|
|
1320
|
+
|
|
1321
|
+
FINAL REMINDERS
|
|
1322
|
+
|
|
1323
|
+
|
|
1324
|
+
your README is your project's front door
|
|
1325
|
+
|
|
1326
|
+
it's often the first thing potential users see.
|
|
1327
|
+
make it welcoming, clear, and actionable.
|
|
1328
|
+
|
|
1329
|
+
|
|
1330
|
+
clarity over cleverness
|
|
1331
|
+
|
|
1332
|
+
write for someone who doesn't know your project.
|
|
1333
|
+
avoid in-jokes, obscure references, internal terminology.
|
|
1334
|
+
say what you mean directly.
|
|
1335
|
+
|
|
1336
|
+
|
|
1337
|
+
examples beat explanations
|
|
1338
|
+
|
|
1339
|
+
show, don't just tell.
|
|
1340
|
+
code examples explain more than paragraphs.
|
|
1341
|
+
make every example runnable.
|
|
1342
|
+
|
|
1343
|
+
|
|
1344
|
+
keep it living
|
|
1345
|
+
|
|
1346
|
+
update README as the project evolves.
|
|
1347
|
+
stale docs lose trust.
|
|
1348
|
+
current docs build confidence.
|
|
1349
|
+
|
|
1350
|
+
|
|
1351
|
+
the test
|
|
1352
|
+
|
|
1353
|
+
can someone unfamiliar with your project:
|
|
1354
|
+
[ ] understand what it does in 5 seconds?
|
|
1355
|
+
[ ] install it in 30 seconds?
|
|
1356
|
+
[ ] use it for something useful in 2 minutes?
|
|
1357
|
+
|
|
1358
|
+
if yes, you have a great README.
|
|
1359
|
+
|
|
1360
|
+
now go write documentation that welcomes users in.
|