[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CX07T2RB2HGE2STJ9J4GT4":3,"skill-same:01M6CX07T2RB2HGE2STJ9J4GT4":54},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":27,"linkOnly":28,"markdownContent":29,"markdownBody":30,"frontMatter":31,"refName":34,"commitSha":35,"skillDirectory":5,"forksCount":36,"repositoryHtmlUrl":37,"repositoryHomepageUrl":6,"ownerHtmlUrl":38,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":39,"install":40,"resources":53},"01M6CX07T2RB2HGE2STJ9J4GT4","electrical-engineering",null,"Electrical engineering fundamentals and design","ffsshhttiikk\u002Fopencode-agents-skills","ffsshhttiikk","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F226346827?v=4","01M6CWD9RR3Y7VRQX3MXYC8FYH","01M6CWD9WVPYAZW0J82G1VKGHY",3,"MIT","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Felectrical-engineering\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",[23,24,25,26],"engineering","electrical engineering","design","opencode","2026-11-10 10:12:30",false,"---\nname: electrical-engineering\ndescription: Electrical engineering fundamentals and design\nlicense: MIT\ncompatibility: opencode\nmetadata:\n  audience: engineers, technicians, students\n  category: engineering\n---\n\n## What I do\n\n- Design electrical circuits and systems\n- Analyze power systems and distribution\n- Design digital and analog electronics\n- Specify electrical equipment and components\n- Ensure compliance with electrical codes\n\n## When to use me\n\n- When designing electrical systems for buildings or facilities\n- When analyzing power distribution\n- When selecting electrical equipment\n- When designing electronic circuits\n- When working on power generation or transmission\n\n## Key Concepts\n\n### Circuit Analysis\n\n```python\nimport numpy as np\nfrom scipy import signal\n\n# Ohm's Law\ndef ohms_law(V=None, I=None, R=None):\n    \"\"\"Calculate unknown using V=IR\"\"\"\n    if V is not None and R is not None:\n        return V \u002F R\n    elif V is not None and I is not None:\n        return V \u002F I\n    elif I is not None and R is not None:\n        return I * R\n\n# Kirchhoff's Current Law (KCL)\ndef kcl(node_currents):\n    \"\"\"Sum of currents at node = 0\"\"\"\n    return sum(node_currents)\n\n# Kirchhoff's Voltage Law (KVL)\ndef kvl(loop_voltages):\n    \"\"\"Sum of voltages in loop = 0\"\"\"\n    return sum(loop_voltages)\n\n# Power calculations\ndef electrical_power(V, I=None, R=None):\n    \"\"\"P = VI = I²R = V²\u002FR\"\"\"\n    if I is not None:\n        return V * I\n    elif R is not None:\n        return V**2 \u002F R\n\n# AC circuits\ndef impedance(R, X_L=0, X_C=0):\n    \"\"\"Complex impedance Z = R + j(XL - XC)\"\"\"\n    return complex(R, X_L - X_C)\n\ndef apparent_power(P, Q):\n    \"\"\"S = √(P² + Q²)\"\"\"\n    return np.sqrt(P**2 + Q**2)\n\ndef power_factor(P, S):\n    \"\"\"PF = P\u002FS\"\"\"\n    return P \u002F S\n```\n\n### Circuit Theorems\n\n```python\n# Thevenin equivalent\nclass TheveninEquivalent:\n    def __init__(self, V_th, R_th):\n        self.V_th = V_th  # Open circuit voltage\n        self.R_th = R_th  # Equivalent resistance\n    \n    def max_power_transfer(self):\n        \"\"\"Maximum power when R_load = R_th\"\"\"\n        return {\n            \"R_load\": self.R_th,\n            \"P_max\": self.V_th**2 \u002F (4 * self.R_th)\n        }\n\n# Norton equivalent\nclass NortonEquivalent:\n    def __init__(self, I_n, R_n):\n        self.I_n = I_n  # Short circuit current\n        self.R_n = R_n  # Equivalent resistance\n```\n\n### Power Systems\n\n```python\n# Three-phase power\nclass ThreePhasePower:\n    @staticmethod\n    def line_to_phase(V_line, connection=\"Y\"):\n        if connection == \"Y\":\n            return V_line \u002F np.sqrt(3)\n        else:  # Delta\n            return V_line\n    \n    @staticmethod\n    def total_power(V_line, I_line, PF):\n        # Y: S = √3 × V_L × I_L\n        # Δ: S = √3 × V_L × I_L\n        S = np.sqrt(3) * V_line * I_line\n        P = S * PF\n        Q = S * np.sqrt(1 - PF**2)\n        return {\"S\": S, \"P\": P, \"Q\": Q}\n    \n    @staticmethod\n    def voltage_drop(percent, V):\n        \"\"\"Allowable voltage drop\"\"\"\n        return percent \u002F 100 * V\n```\n\n### Electronic Components\n\n| Component | Symbol | Function |\n|-----------|--------|----------|\n| Resistor | R | Current limiting, voltage division |\n| Capacitor | C | Energy storage, filtering |\n| Inductor | L | Energy storage, filtering |\n| Diode | D | One-way current flow |\n| Transistor | Q | Amplification, switching |\n| Op-Amp | UA | Signal amplification |\n\n### Filter Design\n\n```python\n# First order low-pass filter\ndef lp_filter_fc(R, C):\n    \"\"\"Cutoff frequency f_c = 1\u002F(2πRC)\"\"\"\n    return 1 \u002F (2 * np.pi * R * C)\n\n# Sallen-Key second order\ndef sallen_key_components(fc, Q):\n    \"\"\"Calculate component values\"\"\"\n    # Given fc and Q, solve for R and C\n    wc = 2 * np.pi * fc\n    # R1 = R2 = R, C1 = C2 = C\n    C = 1 \u002F (wc * Q * R)  # Solve for C given R\n    return {\"R\": R, \"C\": C}\n```\n\n### Electrical Codes\n\n- **NEC (NFPA 70)**: National Electrical Code\n- **IEC**: International Electrotechnical Commission\n- **IEEE**: Institute of Electrical and Electronics Engineers\n- **UL**: Underwriters Laboratories safety standards\n- **NEMA**: National Electrical Manufacturers Association\n","## What I do\n\n- Design electrical circuits and systems\n- Analyze power systems and distribution\n- Design digital and analog electronics\n- Specify electrical equipment and components\n- Ensure compliance with electrical codes\n\n## When to use me\n\n- When designing electrical systems for buildings or facilities\n- When analyzing power distribution\n- When selecting electrical equipment\n- When designing electronic circuits\n- When working on power generation or transmission\n\n## Key Concepts\n\n### Circuit Analysis\n\n```python\nimport numpy as np\nfrom scipy import signal\n\n# Ohm's Law\ndef ohms_law(V=None, I=None, R=None):\n    \"\"\"Calculate unknown using V=IR\"\"\"\n    if V is not None and R is not None:\n        return V \u002F R\n    elif V is not None and I is not None:\n        return V \u002F I\n    elif I is not None and R is not None:\n        return I * R\n\n# Kirchhoff's Current Law (KCL)\ndef kcl(node_currents):\n    \"\"\"Sum of currents at node = 0\"\"\"\n    return sum(node_currents)\n\n# Kirchhoff's Voltage Law (KVL)\ndef kvl(loop_voltages):\n    \"\"\"Sum of voltages in loop = 0\"\"\"\n    return sum(loop_voltages)\n\n# Power calculations\ndef electrical_power(V, I=None, R=None):\n    \"\"\"P = VI = I²R = V²\u002FR\"\"\"\n    if I is not None:\n        return V * I\n    elif R is not None:\n        return V**2 \u002F R\n\n# AC circuits\ndef impedance(R, X_L=0, X_C=0):\n    \"\"\"Complex impedance Z = R + j(XL - XC)\"\"\"\n    return complex(R, X_L - X_C)\n\ndef apparent_power(P, Q):\n    \"\"\"S = √(P² + Q²)\"\"\"\n    return np.sqrt(P**2 + Q**2)\n\ndef power_factor(P, S):\n    \"\"\"PF = P\u002FS\"\"\"\n    return P \u002F S\n```\n\n### Circuit Theorems\n\n```python\n# Thevenin equivalent\nclass TheveninEquivalent:\n    def __init__(self, V_th, R_th):\n        self.V_th = V_th  # Open circuit voltage\n        self.R_th = R_th  # Equivalent resistance\n    \n    def max_power_transfer(self):\n        \"\"\"Maximum power when R_load = R_th\"\"\"\n        return {\n            \"R_load\": self.R_th,\n            \"P_max\": self.V_th**2 \u002F (4 * self.R_th)\n        }\n\n# Norton equivalent\nclass NortonEquivalent:\n    def __init__(self, I_n, R_n):\n        self.I_n = I_n  # Short circuit current\n        self.R_n = R_n  # Equivalent resistance\n```\n\n### Power Systems\n\n```python\n# Three-phase power\nclass ThreePhasePower:\n    @staticmethod\n    def line_to_phase(V_line, connection=\"Y\"):\n        if connection == \"Y\":\n            return V_line \u002F np.sqrt(3)\n        else:  # Delta\n            return V_line\n    \n    @staticmethod\n    def total_power(V_line, I_line, PF):\n        # Y: S = √3 × V_L × I_L\n        # Δ: S = √3 × V_L × I_L\n        S = np.sqrt(3) * V_line * I_line\n        P = S * PF\n        Q = S * np.sqrt(1 - PF**2)\n        return {\"S\": S, \"P\": P, \"Q\": Q}\n    \n    @staticmethod\n    def voltage_drop(percent, V):\n        \"\"\"Allowable voltage drop\"\"\"\n        return percent \u002F 100 * V\n```\n\n### Electronic Components\n\n| Component | Symbol | Function |\n|-----------|--------|----------|\n| Resistor | R | Current limiting, voltage division |\n| Capacitor | C | Energy storage, filtering |\n| Inductor | L | Energy storage, filtering |\n| Diode | D | One-way current flow |\n| Transistor | Q | Amplification, switching |\n| Op-Amp | UA | Signal amplification |\n\n### Filter Design\n\n```python\n# First order low-pass filter\ndef lp_filter_fc(R, C):\n    \"\"\"Cutoff frequency f_c = 1\u002F(2πRC)\"\"\"\n    return 1 \u002F (2 * np.pi * R * C)\n\n# Sallen-Key second order\ndef sallen_key_components(fc, Q):\n    \"\"\"Calculate component values\"\"\"\n    # Given fc and Q, solve for R and C\n    wc = 2 * np.pi * fc\n    # R1 = R2 = R, C1 = C2 = C\n    C = 1 \u002F (wc * Q * R)  # Solve for C given R\n    return {\"R\": R, \"C\": C}\n```\n\n### Electrical Codes\n\n- **NEC (NFPA 70)**: National Electrical Code\n- **IEC**: International Electrotechnical Commission\n- **IEEE**: Institute of Electrical and Electronics Engineers\n- **UL**: Underwriters Laboratories safety standards\n- **NEMA**: National Electrical Manufacturers Association\n",{"name":5,"license":14,"metadata":32,"description":7,"compatibility":26},{"audience":33,"category":23},"engineers, technicians, students","main","5f7a3e453c98261f93d19a6a7de44ad8f7b72d41",2,"https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk","2026-03-01 06:55:40",{"source":8,"skillName":5,"commands":41,"prompt":51,"zipAvailable":52},[42,45,48],{"tool":43,"command":44},"npx","npx skills add ffsshhttiikk\u002Fopencode-agents-skills --skill electrical-engineering",{"tool":46,"command":47},"bunx","bunx skills add ffsshhttiikk\u002Fopencode-agents-skills --skill electrical-engineering",{"tool":49,"command":50},"pnpm","pnpm dlx skills add ffsshhttiikk\u002Fopencode-agents-skills --skill electrical-engineering","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Felectrical-engineering\u002FSKILL.md",true,[],[55,66,76,85,95,104],{"skillNo":56,"name":57,"nameZh":6,"description":58,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":59,"categories":60,"keywords":61,"publishedAt":27},"01M6CXT9TXDF79BWJTMQAPB49G","xamarin","Xamarin cross-platform development","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Fxamarin\u002FSKILL.md",[],[57,62,63,64,26,65],"platform","cross-platform","mobile","development",{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":72,"publishedAt":27},"01M6CXT8AD04MFYDA32VW3FKAG","wrangling","Data wrangling fundamentals","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Fwrangling\u002FSKILL.md",[],[68,73,26,74,75],"data wrangling","science","data",{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":27},"01M6CXT717GCN7SRRNPBDP4508","windows","Windows operating system administration and scripting","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Fwindows\u002FSKILL.md",[],[78,83,26,84],"system","scripting",{"skillNo":86,"name":87,"nameZh":6,"description":88,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":89,"categories":90,"keywords":91,"publishedAt":27},"01M6CXT54K794NMEM3XAPZZDKT","wide-column","Wide-column data model","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Fwide-column\u002FSKILL.md",[],[92,93,26,94,75],"wide column","databases","model",{"skillNo":96,"name":97,"nameZh":6,"description":98,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":99,"categories":100,"keywords":101,"publishedAt":27},"01M6CXT28FMT2P4V9GZE67WA8E","wide-column-stores","Wide-column database stores","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Fwide-column-stores\u002FSKILL.md",[],[102,93,26,103],"wide column stores","database",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":27},"01M6CXT0D0M0Q4T2N7C2RX7DSN","websockets","WebSocket implementation and best practices","https:\u002F\u002Fgithub.com\u002Fffsshhttiikk\u002Fopencode-agents-skills\u002Fblob\u002Fmain\u002Fwebsockets\u002FSKILL.md",[],[106,111,112,113,26,114,115],"websocket","real-time","time","best practices","implementation"]