Skip to content

Add Claude Code Marketplace plugins#5

Merged
klazuka merged 1 commit intomainfrom
klazuka/add-cc-marketplace
Oct 16, 2025
Merged

Add Claude Code Marketplace plugins#5
klazuka merged 1 commit intomainfrom
klazuka/add-cc-marketplace

Conversation

@klazuka
Copy link
Copy Markdown
Collaborator

@klazuka klazuka commented Oct 16, 2025

No description provided.

@klazuka klazuka requested a review from dhollman October 16, 2025 16:02
@klazuka klazuka merged commit 4d1e3f3 into main Oct 16, 2025
@AKABoyd7
Copy link
Copy Markdown

src/plugin.py

import ollama
from pyautocad import Autocad, APoint

class JaretAIPlugin:
def init(self):
self.acad = Autocad(create_if_not_exists=True)
self.model = "jaret-ai"

def generate_drawing(self, description: str) -> dict:
    """Generate AutoCAD drawing from description"""
    try:
        response = ollama.generate(
            model=self.model,
            prompt=f"Generate Python code for AutoCAD: {description}"
        )
        
        code = response['response']
        exec(code, {'acad': self.acad, 'APoint': APoint})
        
        return {
            "status": "success",
            "code": code,
            "message": "Drawing generated successfully"
        }
    except Exception as e:
        return {
            "status": "error",
            "message": str(e)
        }

def calculate_materials(self, area: float, floors: int = 1) -> dict:
    """Calculate construction materials"""
    prompt = f"""
    Calculate materials for {floors}-floor house with {area} sqm total area.
    Include Thai market prices.
    """
    
    response = ollama.generate(
        model=self.model,
        prompt=prompt
    )
    
    return {
        "status": "success",
        "result": response['response'],
        "area": area,
        "floors": floors
    }

Plugin interface

plugin = JaretAIPlugin()

def handle_command(command: str, params: dict):

Okeysir198 referenced this pull request in Okeysir198/P20251122-claude-skills Nov 21, 2025
⚠️ PRODUCTION BLOCKER IDENTIFIED ⚠️

After comprehensive execution flow analysis, discovered critical deadlock
in streaming implementation that will cause hangs in production.

Critical Bug #1: DEADLOCK in end_input() Flow
---------------------------------------------
- When end_input() is called, client stops sending audio
- Client does NOT notify server that streaming is complete
- Server waits for more audio indefinitely
- Client waits for final transcriptions indefinitely
- MUTUAL DEADLOCK - both sides waiting forever

Current Flow (BROKEN):
1. User calls stream.end_input()
2. _send_loop() receives None sentinel and exits
3. But _send_loop() does NOT send end-of-stream message to server
4. Server continues waiting for audio
5. _recv_loop() waits for server messages
6. User waits for async iteration to complete
7. DEADLOCK

Impact:
- Any code using end_input() will hang indefinitely
- Tests only pass because they use timeouts + explicit aclose()
- Will cause production outages

Reproduction:
```python
stream = stt.stream()
# ... push frames ...
await stream.end_input()
async for event in stream:  # HANGS FOREVER
    print(event)
```

Additional Bugs Found:
---------------------
- Bug #2: Multiple None sentinels queued (end_input + aclose)
- Bug #3: Frames accepted after end_input() (silent data loss)
- Bug #5: Unnecessary None queued in aclose() before cancellation

Files Added:
- CRITICAL_BUGS.md - Detailed execution trace and bug analysis
- FIXES_REQUIRED.md - Complete fix implementation with code

Current Status: ❌ NOT PRODUCTION READY
Next Steps: Implement fixes in FIXES_REQUIRED.md (~3 hours)

Tests pass currently only due to timeout workarounds masking the deadlock.
Ashutosh0x pushed a commit to Ashutosh0x/skills that referenced this pull request Feb 5, 2026
xjrmh pushed a commit to xjrmh/skills that referenced this pull request Mar 3, 2026
Attaches APACHE 2.0 to the `plan` system skill.
paulgnz added a commit to XPRNetwork/skills that referenced this pull request Mar 18, 2026
Updates from merged PRs:
- Fix LOAN protocol docs: lending.loan contract, shares.loan L-tokens, mint/redeem actions (anthropics#4)
- Fix staking actions: eosio::stakexpr not eosio.proton::stake (anthropics#6)
- Document all-numeric account name RPC bug with workarounds (anthropics#5)
- Add proton.swaps AMM pool documentation
- Add critical DEX deposit memo warning
- Replace stale proton.greymass.com endpoints with active ones
- Clarify mobile wallet critical settings (anthropics#2)
- Add verified P2P peers (#1)

Co-Authored-By: charliebot87 <[email protected]>
Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants