sophhub 0.2.2 → 0.2.4

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.
Files changed (109) hide show
  1. package/package.json +1 -1
  2. package/skills/consensus/skill.json +20 -0
  3. package/skills/consensus/src/SKILL.md +93 -0
  4. package/skills/deepwiki/skill.json +20 -0
  5. package/skills/deepwiki/src/SKILL.md +45 -0
  6. package/skills/deepwiki/src/_meta.json +6 -0
  7. package/skills/deepwiki/src/scripts/deepwiki.js +135 -0
  8. package/skills/feishu-bitable/skill.json +20 -0
  9. package/skills/feishu-bitable/src/CHECKLIST.md +150 -0
  10. package/skills/feishu-bitable/src/README.md +178 -0
  11. package/skills/feishu-bitable/src/SKILL.md +113 -0
  12. package/skills/feishu-bitable/src/_meta.json +6 -0
  13. package/skills/feishu-bitable/src/api.js +381 -0
  14. package/skills/feishu-bitable/src/bin/cli.js +284 -0
  15. package/skills/feishu-bitable/src/description.md +143 -0
  16. package/skills/feishu-bitable/src/examples/create-records.json +52 -0
  17. package/skills/feishu-bitable/src/examples/create-table.json +64 -0
  18. package/skills/feishu-bitable/src/package-lock.json +324 -0
  19. package/skills/feishu-bitable/src/package.json +33 -0
  20. package/skills/feishu-bitable/src/publish-config.json +14 -0
  21. package/skills/feishu-bitable/src/test-simple.js +61 -0
  22. package/skills/feishu-bitable/src/utils.js +261 -0
  23. package/skills/flight-booking/skill.json +9 -2
  24. package/skills/flight-booking/src/scripts/flight_booking.py +2 -1
  25. package/skills/google-maps/skill.json +20 -0
  26. package/skills/google-maps/src/SKILL.md +237 -0
  27. package/skills/google-maps/src/_meta.json +6 -0
  28. package/skills/google-maps/src/lib/map_helper.py +912 -0
  29. package/skills/large-task-router/skill.json +20 -0
  30. package/skills/large-task-router/src/SKILL.md +79 -0
  31. package/skills/large-task-router/src/templates/plan.md +74 -0
  32. package/skills/skillhub/skill.json +11 -4
  33. package/skills/skillhub/src/SKILL.md +11 -1
  34. package/skills/sophnet-dailynews/skill.json +20 -0
  35. package/skills/sophnet-dailynews/src/SKILL.md +179 -0
  36. package/skills/sophnet-dailynews/src/cache.json +151 -0
  37. package/skills/sophnet-dailynews/src/sources.json +230 -0
  38. package/skills/sophnet-schedule/skill.json +20 -0
  39. package/skills/sophnet-schedule/src/ARCHITECTURE.md +321 -0
  40. package/skills/sophnet-schedule/src/IMPROVEMENTS.md +145 -0
  41. package/skills/sophnet-schedule/src/SKILL.md +1050 -0
  42. package/skills/sophnet-schedule/src/_meta.json +6 -0
  43. package/skills/sophnet-schedule/src/api/__init__.py +0 -0
  44. package/skills/sophnet-schedule/src/api/models.py +245 -0
  45. package/skills/sophnet-schedule/src/apps/add_event.py +237 -0
  46. package/skills/sophnet-schedule/src/apps/check_reminders.py +112 -0
  47. package/skills/sophnet-schedule/src/apps/check_roc.py +246 -0
  48. package/skills/sophnet-schedule/src/apps/generate_daily_plan.py +342 -0
  49. package/skills/sophnet-schedule/src/apps/import_events.py +216 -0
  50. package/skills/sophnet-schedule/src/apps/monitor_calendar_changes.py +140 -0
  51. package/skills/sophnet-schedule/src/apps/register_tasks.py +169 -0
  52. package/skills/sophnet-schedule/src/apps/sync_roc_to_gcal.py +174 -0
  53. package/skills/sophnet-schedule/src/compat.py +66 -0
  54. package/skills/sophnet-schedule/src/config/__init__.py +0 -0
  55. package/skills/sophnet-schedule/src/config/reminder_rules.yaml +96 -0
  56. package/skills/sophnet-schedule/src/config/roc_events.yaml +44 -0
  57. package/skills/sophnet-schedule/src/config/settings.py +133 -0
  58. package/skills/sophnet-schedule/src/config/task_registry.yaml +92 -0
  59. package/skills/sophnet-schedule/src/docs/FRONTEND_INTEGRATION_GUIDE.md +437 -0
  60. package/skills/sophnet-schedule/src/gcal/__init__.py +0 -0
  61. package/skills/sophnet-schedule/src/gcal/client.py +374 -0
  62. package/skills/sophnet-schedule/src/gcal/models.py +91 -0
  63. package/skills/sophnet-schedule/src/requirements.txt +6 -0
  64. package/skills/sophnet-schedule/src/scripts/setup_gcal_token.py +85 -0
  65. package/skills/sophnet-schedule/src/server.py +669 -0
  66. package/skills/sophnet-schedule/src/services/__init__.py +0 -0
  67. package/skills/sophnet-schedule/src/services/calendar_backend.py +139 -0
  68. package/skills/sophnet-schedule/src/services/conflict_detector.py +96 -0
  69. package/skills/sophnet-schedule/src/services/datetime_utils.py +117 -0
  70. package/skills/sophnet-schedule/src/services/event_classifier.py +100 -0
  71. package/skills/sophnet-schedule/src/services/event_diff.py +160 -0
  72. package/skills/sophnet-schedule/src/services/google_integration.py +500 -0
  73. package/skills/sophnet-schedule/src/services/job_store.py +100 -0
  74. package/skills/sophnet-schedule/src/services/local_event_store.py +266 -0
  75. package/skills/sophnet-schedule/src/services/reminder_planner.py +116 -0
  76. package/skills/sophnet-schedule/src/services/runtime_utils.py +31 -0
  77. package/skills/sophnet-schedule/src/services/table_parser.py +286 -0
  78. package/skills/sophnet-schedule/src/services/task_builder.py +167 -0
  79. package/skills/sophnet-schedule/src/services/time_window.py +72 -0
  80. package/skills/sophnet-stock/skill.json +20 -0
  81. package/skills/sophnet-stock/src/App-Plan.md +442 -0
  82. package/skills/sophnet-stock/src/README.md +214 -0
  83. package/skills/sophnet-stock/src/SKILL.md +236 -0
  84. package/skills/sophnet-stock/src/TODO.md +394 -0
  85. package/skills/sophnet-stock/src/_meta.json +6 -0
  86. package/skills/sophnet-stock/src/docs/ARCHITECTURE.md +408 -0
  87. package/skills/sophnet-stock/src/docs/CONCEPT.md +233 -0
  88. package/skills/sophnet-stock/src/docs/HOT_SCANNER.md +288 -0
  89. package/skills/sophnet-stock/src/docs/README.md +95 -0
  90. package/skills/sophnet-stock/src/docs/USAGE.md +465 -0
  91. package/skills/sophnet-stock/src/scripts/analyze_stock.py +2565 -0
  92. package/skills/sophnet-stock/src/scripts/dividends.py +365 -0
  93. package/skills/sophnet-stock/src/scripts/hot_scanner.py +582 -0
  94. package/skills/sophnet-stock/src/scripts/portfolio.py +548 -0
  95. package/skills/sophnet-stock/src/scripts/rumor_scanner.py +342 -0
  96. package/skills/sophnet-stock/src/scripts/test_stock_analysis.py +409 -0
  97. package/skills/sophnet-stock/src/scripts/watchlist.py +336 -0
  98. package/skills/xiaohongshu/skill.json +20 -0
  99. package/skills/xiaohongshu/src/SKILL.md +91 -0
  100. package/skills/xiaohongshu/src/_meta.json +6 -0
  101. package/skills/xiaohongshu/src/assets/card.html +216 -0
  102. package/skills/xiaohongshu/src/assets/cover.html +82 -0
  103. package/skills/xiaohongshu/src/assets/example.md +84 -0
  104. package/skills/xiaohongshu/src/assets/styles.css +318 -0
  105. package/skills/xiaohongshu/src/scripts/render_xhs_v2.py +737 -0
  106. package/skills/xiaohongshu/src/scripts/sign_server.py +158 -0
  107. package/skills/xiaohongshu/src/scripts/stealth.min.js +7 -0
  108. package/skills/xiaohongshu/src/scripts/xhs_tool.py +186 -0
  109. package/skills/xiaohongshu/src/workflow.py +185 -0
@@ -0,0 +1,465 @@
1
+ # Usage Guide
2
+
3
+ Practical examples for using Stock Analysis v6.0 in real scenarios.
4
+
5
+ ## Table of Contents
6
+
7
+ 1. [Basic Stock Analysis](#basic-stock-analysis)
8
+ 2. [Comparing Stocks](#comparing-stocks)
9
+ 3. [Crypto Analysis](#crypto-analysis)
10
+ 4. [Dividend Investing](#dividend-investing)
11
+ 5. [Portfolio Management](#portfolio-management)
12
+ 6. [Watchlist & Alerts](#watchlist--alerts)
13
+ 7. [Performance Tips](#performance-tips)
14
+ 8. [Interpreting Results](#interpreting-results)
15
+
16
+ ---
17
+
18
+ ## Basic Stock Analysis
19
+
20
+ ### Single Stock
21
+
22
+ ```bash
23
+ uv run scripts/analyze_stock.py AAPL
24
+ ```
25
+
26
+ **Output:**
27
+ ```
28
+ ===========================================================================
29
+ STOCK ANALYSIS: AAPL (Apple Inc.)
30
+ Generated: 2024-02-01T10:30:00
31
+ ===========================================================================
32
+
33
+ RECOMMENDATION: BUY (Confidence: 72%)
34
+
35
+ SUPPORTING POINTS:
36
+ • Beat by 8.2% - EPS $2.18 vs $2.01 expected
37
+ • Strong margin: 24.1%
38
+ • Analyst consensus: Buy with 12.3% upside (42 analysts)
39
+ • Momentum: RSI 58 (neutral)
40
+ • Sector: Technology uptrend (+5.2% 1m)
41
+
42
+ CAVEATS:
43
+ • Earnings in 12 days - high volatility expected
44
+ • High market volatility (VIX 24)
45
+
46
+ ===========================================================================
47
+ DISCLAIMER: NOT FINANCIAL ADVICE.
48
+ ===========================================================================
49
+ ```
50
+
51
+ ### JSON Output
52
+
53
+ For programmatic use:
54
+
55
+ ```bash
56
+ uv run scripts/analyze_stock.py AAPL --output json | jq '.recommendation, .confidence'
57
+ ```
58
+
59
+ ### Verbose Mode
60
+
61
+ See what's happening under the hood:
62
+
63
+ ```bash
64
+ uv run scripts/analyze_stock.py AAPL --verbose
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Comparing Stocks
70
+
71
+ ### Side-by-Side Analysis
72
+
73
+ ```bash
74
+ uv run scripts/analyze_stock.py AAPL MSFT GOOGL
75
+ ```
76
+
77
+ Each stock gets a full analysis. Compare recommendations and confidence levels.
78
+
79
+ ### Sector Comparison
80
+
81
+ Compare stocks in the same sector:
82
+
83
+ ```bash
84
+ # Banks
85
+ uv run scripts/analyze_stock.py JPM BAC WFC GS
86
+
87
+ # Tech
88
+ uv run scripts/analyze_stock.py AAPL MSFT GOOGL AMZN META
89
+ ```
90
+
91
+ ---
92
+
93
+ ## Crypto Analysis
94
+
95
+ ### Basic Crypto
96
+
97
+ ```bash
98
+ uv run scripts/analyze_stock.py BTC-USD
99
+ ```
100
+
101
+ **Crypto-Specific Output:**
102
+ - Market cap classification (large/mid/small)
103
+ - Category (Smart Contract L1, DeFi, etc.)
104
+ - BTC correlation (30-day)
105
+ - Momentum (RSI, price range)
106
+
107
+ ### Compare Cryptos
108
+
109
+ ```bash
110
+ uv run scripts/analyze_stock.py BTC-USD ETH-USD SOL-USD
111
+ ```
112
+
113
+ ### Supported Cryptos
114
+
115
+ ```
116
+ BTC, ETH, BNB, SOL, XRP, ADA, DOGE, AVAX, DOT, MATIC,
117
+ LINK, ATOM, UNI, LTC, BCH, XLM, ALGO, VET, FIL, NEAR
118
+ ```
119
+
120
+ Use `-USD` suffix: `BTC-USD`, `ETH-USD`, etc.
121
+
122
+ ---
123
+
124
+ ## Dividend Investing
125
+
126
+ ### Analyze Dividend Stock
127
+
128
+ ```bash
129
+ uv run scripts/dividends.py JNJ
130
+ ```
131
+
132
+ **Output:**
133
+ ```
134
+ ============================================================
135
+ DIVIDEND ANALYSIS: JNJ (Johnson & Johnson)
136
+ ============================================================
137
+
138
+ Current Price: $160.50
139
+ Annual Dividend: $4.76
140
+ Dividend Yield: 2.97%
141
+ Payment Freq: quarterly
142
+ Ex-Dividend: 2024-02-15
143
+
144
+ Payout Ratio: 65.0% (moderate)
145
+ 5Y Div Growth: +5.8%
146
+ Consecutive Yrs: 62
147
+
148
+ SAFETY SCORE: 78/100
149
+ INCOME RATING: GOOD
150
+
151
+ Safety Factors:
152
+ • Moderate payout ratio (65%)
153
+ • Good dividend growth (+5.8% CAGR)
154
+ • Dividend Aristocrat (62+ years)
155
+
156
+ Dividend History:
157
+ 2023: $4.52
158
+ 2022: $4.36
159
+ 2021: $4.24
160
+ 2020: $4.04
161
+ 2019: $3.80
162
+ ============================================================
163
+ ```
164
+
165
+ ### Compare Dividend Stocks
166
+
167
+ ```bash
168
+ uv run scripts/dividends.py JNJ PG KO MCD VZ T
169
+ ```
170
+
171
+ ### Dividend Aristocrats Screen
172
+
173
+ Look for stocks with:
174
+ - Yield > 2%
175
+ - Payout < 60%
176
+ - Growth > 5%
177
+ - Consecutive years > 25
178
+
179
+ ---
180
+
181
+ ## Portfolio Management
182
+
183
+ ### Create Portfolio
184
+
185
+ ```bash
186
+ uv run scripts/portfolio.py create "Retirement"
187
+ ```
188
+
189
+ ### Add Holdings
190
+
191
+ ```bash
192
+ # Stocks
193
+ uv run scripts/portfolio.py add AAPL --quantity 100 --cost 150.00
194
+
195
+ # Crypto
196
+ uv run scripts/portfolio.py add BTC-USD --quantity 0.5 --cost 40000
197
+ ```
198
+
199
+ ### View Portfolio
200
+
201
+ ```bash
202
+ uv run scripts/portfolio.py show
203
+ ```
204
+
205
+ **Output:**
206
+ ```
207
+ Portfolio: Retirement
208
+ ====================
209
+
210
+ Assets:
211
+ AAPL 100 shares @ $150.00 = $15,000.00
212
+ Current: $185.00 = $18,500.00 (+23.3%)
213
+
214
+ BTC-USD 0.5 @ $40,000 = $20,000.00
215
+ Current: $45,000 = $22,500.00 (+12.5%)
216
+
217
+ Total Cost: $35,000.00
218
+ Current Value: $41,000.00
219
+ Total P&L: +$6,000.00 (+17.1%)
220
+ ```
221
+
222
+ ### Analyze Portfolio
223
+
224
+ ```bash
225
+ # Full analysis of all holdings
226
+ uv run scripts/analyze_stock.py --portfolio "Retirement"
227
+
228
+ # With period returns
229
+ uv run scripts/analyze_stock.py --portfolio "Retirement" --period monthly
230
+ ```
231
+
232
+ ### Rebalance Check
233
+
234
+ The analysis flags concentration warnings:
235
+ ```
236
+ ⚠️ CONCENTRATION WARNINGS:
237
+ • AAPL: 45.1% (>30% of portfolio)
238
+ ```
239
+
240
+ ---
241
+
242
+ ## Watchlist & Alerts
243
+
244
+ ### Add to Watchlist
245
+
246
+ ```bash
247
+ # Basic watch
248
+ uv run scripts/watchlist.py add NVDA
249
+
250
+ # With price target
251
+ uv run scripts/watchlist.py add NVDA --target 800
252
+
253
+ # With stop loss
254
+ uv run scripts/watchlist.py add NVDA --stop 600
255
+
256
+ # Alert on signal change
257
+ uv run scripts/watchlist.py add NVDA --alert-on signal
258
+
259
+ # All options
260
+ uv run scripts/watchlist.py add NVDA --target 800 --stop 600 --alert-on signal
261
+ ```
262
+
263
+ ### View Watchlist
264
+
265
+ ```bash
266
+ uv run scripts/watchlist.py list
267
+ ```
268
+
269
+ **Output:**
270
+ ```json
271
+ {
272
+ "success": true,
273
+ "items": [
274
+ {
275
+ "ticker": "NVDA",
276
+ "current_price": 725.50,
277
+ "price_at_add": 700.00,
278
+ "change_pct": 3.64,
279
+ "target_price": 800.00,
280
+ "to_target_pct": 10.27,
281
+ "stop_price": 600.00,
282
+ "to_stop_pct": -17.30,
283
+ "alert_on_signal": true,
284
+ "last_signal": "BUY",
285
+ "added_at": "2024-01-15"
286
+ }
287
+ ],
288
+ "count": 1
289
+ }
290
+ ```
291
+
292
+ ### Check Alerts
293
+
294
+ ```bash
295
+ # Check for triggered alerts
296
+ uv run scripts/watchlist.py check
297
+
298
+ # Format for notification (Telegram)
299
+ uv run scripts/watchlist.py check --notify
300
+ ```
301
+
302
+ **Alert Example:**
303
+ ```
304
+ 📢 Stock Alerts
305
+
306
+ 🎯 NVDA hit target! $802.50 >= $800.00
307
+ 🛑 TSLA hit stop! $195.00 <= $200.00
308
+ 📊 AAPL signal changed: HOLD → BUY
309
+ ```
310
+
311
+ ### Remove from Watchlist
312
+
313
+ ```bash
314
+ uv run scripts/watchlist.py remove NVDA
315
+ ```
316
+
317
+ ---
318
+
319
+ ## Performance Tips
320
+
321
+ ### Fast Mode
322
+
323
+ Skip slow analyses for quick checks:
324
+
325
+ ```bash
326
+ # Skip insider trading + breaking news
327
+ uv run scripts/analyze_stock.py AAPL --fast
328
+ ```
329
+
330
+ **Speed comparison:**
331
+ | Mode | Time | What's Skipped |
332
+ |------|------|----------------|
333
+ | Default | 5-10s | Nothing |
334
+ | `--no-insider` | 3-5s | SEC EDGAR |
335
+ | `--fast` | 2-3s | Insider + News |
336
+
337
+ ### Batch Analysis
338
+
339
+ Analyze multiple stocks in one command:
340
+
341
+ ```bash
342
+ uv run scripts/analyze_stock.py AAPL MSFT GOOGL AMZN META
343
+ ```
344
+
345
+ ### Caching
346
+
347
+ Market context is cached for 1 hour:
348
+ - VIX, SPY, QQQ trends
349
+ - Fear & Greed Index
350
+ - VIX term structure
351
+ - Breaking news
352
+
353
+ Second analysis of different stock reuses cached data.
354
+
355
+ ---
356
+
357
+ ## Interpreting Results
358
+
359
+ ### Recommendation Thresholds
360
+
361
+ | Score | Recommendation |
362
+ |-------|----------------|
363
+ | > +0.33 | BUY |
364
+ | -0.33 to +0.33 | HOLD |
365
+ | < -0.33 | SELL |
366
+
367
+ ### Confidence Levels
368
+
369
+ | Confidence | Meaning |
370
+ |------------|---------|
371
+ | > 80% | Strong conviction |
372
+ | 60-80% | Moderate conviction |
373
+ | 40-60% | Mixed signals |
374
+ | < 40% | Low conviction |
375
+
376
+ ### Reading Caveats
377
+
378
+ **Always read the caveats!** They often contain critical information:
379
+
380
+ ```
381
+ CAVEATS:
382
+ • Earnings in 5 days - high volatility expected ← Timing risk
383
+ • RSI 78 (overbought) + near 52w high ← Technical risk
384
+ • ⚠️ BREAKING NEWS: Fed emergency rate discussion ← External risk
385
+ • ⚠️ SECTOR RISK: China tensions affect tech ← Geopolitical
386
+ ```
387
+
388
+ ### When to Ignore the Signal
389
+
390
+ - **Pre-earnings:** Even BUY → wait until after
391
+ - **Overbought:** Consider smaller position
392
+ - **Risk-off:** Reduce overall exposure
393
+ - **Low confidence:** Do more research
394
+
395
+ ### When to Trust the Signal
396
+
397
+ - **High confidence + no major caveats**
398
+ - **Multiple supporting points align**
399
+ - **Sector is strong**
400
+ - **Market regime is favorable**
401
+
402
+ ---
403
+
404
+ ## Common Workflows
405
+
406
+ ### Morning Check
407
+
408
+ ```bash
409
+ # Check watchlist alerts
410
+ uv run scripts/watchlist.py check --notify
411
+
412
+ # Quick portfolio update
413
+ uv run scripts/analyze_stock.py --portfolio "Main" --fast
414
+ ```
415
+
416
+ ### Research New Stock
417
+
418
+ ```bash
419
+ # Full analysis
420
+ uv run scripts/analyze_stock.py XYZ
421
+
422
+ # If dividend stock
423
+ uv run scripts/dividends.py XYZ
424
+
425
+ # Add to watchlist for monitoring
426
+ uv run scripts/watchlist.py add XYZ --alert-on signal
427
+ ```
428
+
429
+ ### Weekly Review
430
+
431
+ ```bash
432
+ # Full portfolio analysis
433
+ uv run scripts/analyze_stock.py --portfolio "Main" --period weekly
434
+
435
+ # Check dividend holdings
436
+ uv run scripts/dividends.py JNJ PG KO
437
+ ```
438
+
439
+ ---
440
+
441
+ ## Troubleshooting
442
+
443
+ ### "Invalid ticker"
444
+
445
+ - Check spelling
446
+ - For crypto, use `-USD` suffix
447
+ - Non-US stocks may not work
448
+
449
+ ### "Insufficient data"
450
+
451
+ - Stock might be too new
452
+ - ETFs have limited data
453
+ - OTC stocks often fail
454
+
455
+ ### Slow Performance
456
+
457
+ - Use `--fast` for quick checks
458
+ - Insider trading is slowest
459
+ - Breaking news adds ~2s
460
+
461
+ ### Missing Data
462
+
463
+ - Not all stocks have analyst coverage
464
+ - Some metrics require options chains
465
+ - Crypto has no sentiment data