hokipoki 0.7.0 โ†’ 0.8.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4fdce824f42ae5123c16881e6750eea924cff8b6b2cd498f4329050411994d18
4
- data.tar.gz: 8b150ca5b979b06b4265db8c0cdb873045dece1d85b39ac440b436919a096bd0
3
+ metadata.gz: bca23e3d5a8c3a9e35b610837faaaffe4fe0739eb849836c3117cb4f4bcc8b0e
4
+ data.tar.gz: b73c15b344ff10824c2479b20850b175cfd7c62e5124404622ed3269eeba759a
5
5
  SHA512:
6
- metadata.gz: '018c838374788cbd86af2fafe917568925b59cf6e137026c35326b4f2d137a4fe585939367c5c7935ac1e5719bd026a8ebe909742be45a45cf9e28a23b303bf9'
7
- data.tar.gz: 216d2b1790a380a03e68c7895e450442679c00cb766226c3dc5c84d3cc0f442c2e18e4332d76a8463e7c5ae2438e753bce140767ef7bd722a91892a16973507e
6
+ metadata.gz: c19ea3c29430b1a2fe1e897d393a96e48fa168c8934c047bc03f1d732fefbaf2efcad1ab644c235c7d8a32455c8f2d52d13ddfd85f03deaa7dddda3c05f6f70e
7
+ data.tar.gz: b3caaa7e35a44bac2947f0637935dabfa59726789bc1a815a5830aad1f28ddf1cba248a445fc3abdf8f73f38f537fbf733a0f7b6c238f6c47d24e9361de6e94e
@@ -41,13 +41,16 @@ module HiveMind
41
41
 
42
42
  def check_hokipoki_installation
43
43
  unless File.exist?('config/initializers/hokipoki.rb')
44
- say @pastel.red("โŒ Hokipoki not installed!")
45
- say @pastel.yellow("Please run: rails g hokipoki:install first")
46
- say @pastel.white("This sets up core dependencies and authentication.")
47
- exit(1)
48
- end
44
+ say @pastel.yellow("๐Ÿ“ฆ Hokipoki not installed - installing automatically...")
45
+ say @pastel.cyan("Running: rails g hokipoki:install")
46
+
47
+ # Automatically run hokipoki:install
48
+ invoke 'hokipoki:install', [], {}
49
49
 
50
- say @pastel.green("โœ… Hokipoki core detected")
50
+ say @pastel.green("โœ… Hokipoki core installed")
51
+ else
52
+ say @pastel.green("โœ… Hokipoki core detected")
53
+ end
51
54
  end
52
55
 
53
56
  def gather_installation_preferences
@@ -175,6 +178,9 @@ module HiveMind
175
178
  run 'yarn install' if @config[:frontend_assets] && File.exist?('package.json')
176
179
  end
177
180
 
181
+ # Automatically attach parasite for Claude
182
+ setup_automatic_parasite_attachment
183
+
178
184
  # Display component banners as they're installed
179
185
  display_component_installations
180
186
 
@@ -195,46 +201,59 @@ module HiveMind
195
201
  end
196
202
  end
197
203
 
198
- def display_completion_message
199
- say "\n#{@pastel.green.bold('โœ… HokiPoki lightweight installation completed!')}"
200
- say "\n#{@pastel.cyan.bold('๐ŸŽฏ ESSENTIAL NEXT STEPS - START SERVICES:')}"
204
+ def setup_automatic_parasite_attachment
205
+ say "\n#{@pastel.cyan('๐Ÿฆ  Setting up automatic parasite attachment...')}"
206
+
207
+ # Run the parasite attachment generator
208
+ invoke 'hokipoki:attach_parasite', ['claude_cli'], {
209
+ parasite_type: 'claude_cli',
210
+ auto_hijack: true,
211
+ behavioral_analysis: true,
212
+ intelligent_injection: true
213
+ }
201
214
 
202
- say "\n #{@pastel.yellow('1. Install gem dependencies:')}"
203
- say " #{@pastel.cyan('bundle install')}"
215
+ say @pastel.green("โœ… Parasite attachment configured for Claude")
216
+ end
204
217
 
205
- say "\n #{@pastel.yellow('2. Run database migrations:')}"
206
- say " #{@pastel.cyan('rails db:migrate')}"
218
+ def display_completion_message
219
+ say "\n#{@pastel.green.bold('๐ŸŽ‰ COMPLETE UNIFIED INSTALLATION FINISHED!')}"
220
+ say "\n#{@pastel.cyan.bold('๐ŸŽฏ EVERYTHING IS NOW READY - JUST START YOUR SERVICES:')}"
207
221
 
208
- say "\n #{@pastel.yellow('3. ๐Ÿš€ START RAILS SERVER (REQUIRED):')}"
209
- say " #{@pastel.cyan('rails server')} #{@pastel.dim('(Keep this running in background)')}"
210
- say " #{@pastel.dim('๐Ÿ“ This enables HiveMind connection for Claude')}"
222
+ say "\n #{@pastel.green('โœ… Hokipoki Core:')} #{@pastel.dim('Installed automatically')}"
223
+ say " #{@pastel.green('โœ… HiveMind:')} #{@pastel.dim('Vector database ready')}"
224
+ say " #{@pastel.green('โœ… Parasite:')} #{@pastel.dim('Claude hijacking configured')}"
225
+ say " #{@pastel.green('โœ… Gemini Refiner:')} #{@pastel.dim('Vector refinement ready')}"
211
226
 
212
- say "\n #{@pastel.yellow('4. ๐Ÿง  START HIVEMIND CONNECTION:')}"
213
- say " #{@pastel.cyan('rails g hive_mind:start')} #{@pastel.dim('(Run this to establish Claude link)')}"
214
- say " #{@pastel.dim('๐Ÿ“ Creates bin/hive_mind_connect script')}"
227
+ say "\n #{@pastel.yellow('1. Start Rails server:')}"
228
+ say " #{@pastel.cyan('rails server')} #{@pastel.dim('(Keep this running)')}"
215
229
 
216
- say "\n #{@pastel.yellow('5. ๐Ÿฆ  ACTIVATE CLAUDE PARASITE:')}"
230
+ say "\n #{@pastel.yellow('2. Test Claude enhancement:')}"
217
231
  say " #{@pastel.cyan('Exit Claude and restart:')} #{@pastel.magenta('claude')}"
218
- say " #{@pastel.dim('๐Ÿ“ Auto-detects running Rails server + HiveMind')}"
232
+ say " #{@pastel.dim('๐Ÿฆ  Parasite will auto-attach when Claude starts')}"
233
+
234
+ say "\n #{@pastel.yellow('3. Optional - Start Gemini refinement:')}"
235
+ say " #{@pastel.cyan('rails gemini:start')} #{@pastel.dim('(In new terminal for vector refinement)')}"
219
236
 
220
237
  say "\n#{@pastel.red.bold('โš ๏ธ CONNECTION STATUS INDICATORS:')}"
221
238
  say " #{@pastel.green('๐Ÿง  HIVE_MIND: CONNECTED')} #{@pastel.dim('- HiveMind active')}"
222
239
  say " #{@pastel.green('๐Ÿฆ  PARASITE: INTERCEPTING')} #{@pastel.dim('- Claude enhancement active')}"
223
240
  say " #{@pastel.green('๐Ÿ’ฐ TOKEN SAVINGS: ACTIVE')} #{@pastel.dim('- Cost optimization running')}"
224
241
 
225
- say "\n #{@pastel.yellow('6. ๐Ÿงช TEST ENHANCED CLAUDE:')}"
242
+ say "\n #{@pastel.yellow('4. ๐Ÿงช TEST ENHANCED CLAUDE:')}"
226
243
  say " #{@pastel.dim('Ask Claude:')} #{@pastel.cyan('\"Explain this Rails app structure\"')}"
227
- say " #{@pastel.dim('Look for:')} #{@pastel.green('๐Ÿ“Š Tokens Saved, โšก Processing Time, ๐ŸŽฏ Efficiency')}"
228
-
229
- say "\n#{@pastel.blue.bold('๐Ÿ“ Files Created:')}"
230
- say " - config/initializers/hokipoki.rb"
231
- say " - app/models/hive_mind_document.rb (with vector embeddings)"
232
- say " - app/services/embedding_service.rb (Claude-focused)"
233
- say " - app/services/smart_retrieval_engine.rb"
234
- say " - db/migrate/create_hive_mind_documents.rb (with pgvector)"
235
-
236
- say "\n#{@pastel.green.bold('๐Ÿง  Claude + HiveMind Integration Ready!')}"
237
- say "#{@pastel.dim('Run the steps above to activate your enhanced Claude experience.')}"
244
+ say " #{@pastel.dim('Look for:')} #{@pastel.green('๐Ÿฆ  Parasitic enhancement active')}"
245
+
246
+ say "\n#{@pastel.blue.bold('๐Ÿ“ Complete Installation Includes:')}"
247
+ say " - #{@pastel.green('โœ…')} Hokipoki core (config/initializers/hokipoki.rb)"
248
+ say " - #{@pastel.green('โœ…')} HiveMind (app/models/hive_mind_document.rb)"
249
+ say " - #{@pastel.green('โœ…')} Vector embeddings (app/services/embedding_service.rb)"
250
+ say " - #{@pastel.green('โœ…')} Smart retrieval (app/services/smart_retrieval_engine.rb)"
251
+ say " - #{@pastel.green('โœ…')} Parasite attachment (automatic Claude hijacking)"
252
+ say " - #{@pastel.green('โœ…')} Gemini refinement (rails gemini:start)"
253
+ say " - #{@pastel.green('โœ…')} Database migrations (with pgvector)"
254
+
255
+ say "\n#{@pastel.green.bold('๐Ÿš€ ONE-COMMAND SETUP COMPLETE!')}"
256
+ say "#{@pastel.cyan('rails g hive_mind:install')} #{@pastel.dim('installs everything you need!')}"
238
257
  end
239
258
 
240
259
  private
@@ -306,12 +306,26 @@ module Hokipoki
306
306
  config_addition = <<~RUBY
307
307
 
308
308
  # Parasite attachment enabled
309
- config.parasite_attachment = true
310
- config.parasite_type = '#{options[:parasite_type]}'
309
+ Rails.application.configure do |config|
310
+ config.parasite_attachment = true
311
+ config.parasite_type = '#{options[:parasite_type]}'
312
+ end
311
313
  RUBY
312
314
 
313
315
  append_to_file main_config_file, config_addition
314
316
  say "๐Ÿ“ Updated main hokipoki config", :green
317
+ else
318
+ # Create the config file if it doesn't exist
319
+ create_file main_config_file, <<~RUBY
320
+ # HokiPoki Configuration
321
+
322
+ Rails.application.configure do |config|
323
+ # Parasite attachment enabled
324
+ config.parasite_attachment = true
325
+ config.parasite_type = '#{options[:parasite_type]}'
326
+ end
327
+ RUBY
328
+ say "๐Ÿ“ Created hokipoki config with parasite settings", :green
315
329
  end
316
330
  end
317
331
 
@@ -1,3 +1,3 @@
1
1
  module Hokipoki
2
- VERSION = "0.7.0"
2
+ VERSION = "0.8.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hokipoki
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rails Utilities