[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CTZ5G3GAXPRATKJB7GEPAP":3,"skill-same:01M6CTZ5G3GAXPRATKJB7GEPAP":63},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":41,"commitSha":42,"skillDirectory":43,"forksCount":44,"repositoryHtmlUrl":45,"repositoryHomepageUrl":45,"ownerHtmlUrl":46,"ownerBlogUrl":6,"ownerDescription":47,"updatedAt":48,"install":49,"resources":62},"01M6CTZ5G3GAXPRATKJB7GEPAP","mtls-configuration",null,"Configure mutual TLS (mTLS) for zero-trust service-to-service communication. Use when implementing zero-trust networking, certificate management, or securing internal service communication.","Sam-06060\u002Fjarvis-assistant","Sam-06060","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F208600848?v=4","01M6CRKT7C7FXD21V6HXF293S0","Samson Frank Ganta","01M6CRKTBEKYFD8YX5Z1GT99EE",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fmtls-configuration\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"mtls","configuration","mtls configuration","networking","communication","ZeRO","zero-trust","tls","certificate","configure","management","use","trust","community","certificate management","2026-11-10 10:12:30",false,"---\nname: mtls-configuration\ndescription: \"Configure mutual TLS (mTLS) for zero-trust service-to-service communication. Use when implementing zero-trust networking, certificate management, or securing internal service communication.\"\nrisk: unknown\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# mTLS Configuration\n\nComprehensive guide to implementing mutual TLS for zero-trust service mesh communication.\n\n## Do not use this skill when\n\n- The task is unrelated to mtls configuration\n- You need a different domain or tool outside this scope\n\n## Instructions\n\n- Clarify goals, constraints, and required inputs.\n- Apply relevant best practices and validate outcomes.\n- Provide actionable steps and verification.\n- If detailed examples are required, open `resources\u002Fimplementation-playbook.md`.\n\n## Use this skill when\n\n- Implementing zero-trust networking\n- Securing service-to-service communication\n- Certificate rotation and management\n- Debugging TLS handshake issues\n- Compliance requirements (PCI-DSS, HIPAA)\n- Multi-cluster secure communication\n\n## Core Concepts\n\n### 1. mTLS Flow\n\n```\n┌─────────┐                              ┌─────────┐\n│ Service │                              │ Service │\n│    A    │                              │    B    │\n└────┬────┘                              └────┬────┘\n     │                                        │\n┌────┴────┐      TLS Handshake          ┌────┴────┐\n│  Proxy  │◄───────────────────────────►│  Proxy  │\n│(Sidecar)│  1. ClientHello             │(Sidecar)│\n│         │  2. ServerHello + Cert      │         │\n│         │  3. Client Cert             │         │\n│         │  4. Verify Both Certs       │         │\n│         │  5. Encrypted Channel       │         │\n└─────────┘                              └─────────┘\n```\n\n### 2. Certificate Hierarchy\n\n```\nRoot CA (Self-signed, long-lived)\n    │\n    ├── Intermediate CA (Cluster-level)\n    │       │\n    │       ├── Workload Cert (Service A)\n    │       └── Workload Cert (Service B)\n    │\n    └── Intermediate CA (Multi-cluster)\n            │\n            └── Cross-cluster certs\n```\n\n## Templates\n\n### Template 1: Istio mTLS (Strict Mode)\n\n```yaml\n# Enable strict mTLS mesh-wide\napiVersion: security.istio.io\u002Fv1beta1\nkind: PeerAuthentication\nmetadata:\n  name: default\n  namespace: istio-system\nspec:\n  mtls:\n    mode: STRICT\n---\n# Namespace-level override (permissive for migration)\napiVersion: security.istio.io\u002Fv1beta1\nkind: PeerAuthentication\nmetadata:\n  name: default\n  namespace: legacy-namespace\nspec:\n  mtls:\n    mode: PERMISSIVE\n---\n# Workload-specific policy\napiVersion: security.istio.io\u002Fv1beta1\nkind: PeerAuthentication\nmetadata:\n  name: payment-service\n  namespace: production\nspec:\n  selector:\n    matchLabels:\n      app: payment-service\n  mtls:\n    mode: STRICT\n  portLevelMtls:\n    8080:\n      mode: STRICT\n    9090:\n      mode: DISABLE  # Metrics port, no mTLS\n```\n\n### Template 2: Istio Destination Rule for mTLS\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: default\n  namespace: istio-system\nspec:\n  host: \"*.local\"\n  trafficPolicy:\n    tls:\n      mode: ISTIO_MUTUAL\n---\n# TLS to external service\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: external-api\nspec:\n  host: api.external.com\n  trafficPolicy:\n    tls:\n      mode: SIMPLE\n      caCertificates: \u002Fetc\u002Fcerts\u002Fexternal-ca.pem\n---\n# Mutual TLS to external service\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: partner-api\nspec:\n  host: api.partner.com\n  trafficPolicy:\n    tls:\n      mode: MUTUAL\n      clientCertificate: \u002Fetc\u002Fcerts\u002Fclient.pem\n      privateKey: \u002Fetc\u002Fcerts\u002Fclient-key.pem\n      caCertificates: \u002Fetc\u002Fcerts\u002Fpartner-ca.pem\n```\n\n### Template 3: Cert-Manager with Istio\n\n```yaml\n# Install cert-manager issuer for Istio\napiVersion: cert-manager.io\u002Fv1\nkind: ClusterIssuer\nmetadata:\n  name: istio-ca\nspec:\n  ca:\n    secretName: istio-ca-secret\n---\n# Create Istio CA secret\napiVersion: v1\nkind: Secret\nmetadata:\n  name: istio-ca-secret\n  namespace: cert-manager\ntype: kubernetes.io\u002Ftls\ndata:\n  tls.crt: \u003Cbase64-encoded-ca-cert>\n  tls.key: \u003Cbase64-encoded-ca-key>\n---\n# Certificate for workload\napiVersion: cert-manager.io\u002Fv1\nkind: Certificate\nmetadata:\n  name: my-service-cert\n  namespace: my-namespace\nspec:\n  secretName: my-service-tls\n  duration: 24h\n  renewBefore: 8h\n  issuerRef:\n    name: istio-ca\n    kind: ClusterIssuer\n  commonName: my-service.my-namespace.svc.cluster.local\n  dnsNames:\n    - my-service\n    - my-service.my-namespace\n    - my-service.my-namespace.svc\n    - my-service.my-namespace.svc.cluster.local\n  usages:\n    - server auth\n    - client auth\n```\n\n### Template 4: SPIFFE\u002FSPIRE Integration\n\n```yaml\n# SPIRE Server configuration\napiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: spire-server\n  namespace: spire\ndata:\n  server.conf: |\n    server {\n      bind_address = \"0.0.0.0\"\n      bind_port = \"8081\"\n      trust_domain = \"example.org\"\n      data_dir = \"\u002Frun\u002Fspire\u002Fdata\"\n      log_level = \"INFO\"\n      ca_ttl = \"168h\"\n      default_x509_svid_ttl = \"1h\"\n    }\n\n    plugins {\n      DataStore \"sql\" {\n        plugin_data {\n          database_type = \"sqlite3\"\n          connection_string = \"\u002Frun\u002Fspire\u002Fdata\u002Fdatastore.sqlite3\"\n        }\n      }\n\n      NodeAttestor \"k8s_psat\" {\n        plugin_data {\n          clusters = {\n            \"demo-cluster\" = {\n              service_account_allow_list = [\"spire:spire-agent\"]\n            }\n          }\n        }\n      }\n\n      KeyManager \"memory\" {\n        plugin_data {}\n      }\n\n      UpstreamAuthority \"disk\" {\n        plugin_data {\n          key_file_path = \"\u002Frun\u002Fspire\u002Fsecrets\u002Fbootstrap.key\"\n          cert_file_path = \"\u002Frun\u002Fspire\u002Fsecrets\u002Fbootstrap.crt\"\n        }\n      }\n    }\n---\n# SPIRE Agent DaemonSet (abbreviated)\napiVersion: apps\u002Fv1\nkind: DaemonSet\nmetadata:\n  name: spire-agent\n  namespace: spire\nspec:\n  selector:\n    matchLabels:\n      app: spire-agent\n  template:\n    spec:\n      containers:\n        - name: spire-agent\n          image: ghcr.io\u002Fspiffe\u002Fspire-agent:1.8.0\n          volumeMounts:\n            - name: spire-agent-socket\n              mountPath: \u002Frun\u002Fspire\u002Fsockets\n      volumes:\n        - name: spire-agent-socket\n          hostPath:\n            path: \u002Frun\u002Fspire\u002Fsockets\n            type: DirectoryOrCreate\n```\n\n### Template 5: Linkerd mTLS (Automatic)\n\n```yaml\n# Linkerd enables mTLS automatically\n# Verify with:\n# linkerd viz edges deployment -n my-namespace\n\n# For external services without mTLS\napiVersion: policy.linkerd.io\u002Fv1beta1\nkind: Server\nmetadata:\n  name: external-api\n  namespace: my-namespace\nspec:\n  podSelector:\n    matchLabels:\n      app: my-app\n  port: external-api\n  proxyProtocol: HTTP\u002F1  # or TLS for passthrough\n---\n# Skip TLS for specific port\napiVersion: v1\nkind: Service\nmetadata:\n  name: my-service\n  annotations:\n    config.linkerd.io\u002Fskip-outbound-ports: \"3306\"  # MySQL\n```\n\n## Certificate Rotation\n\n```bash\n# Istio - Check certificate expiry\nistioctl proxy-config secret deploy\u002Fmy-app -o json | \\\n  jq '.dynamicActiveSecrets[0].secret.tlsCertificate.certificateChain.inlineBytes' | \\\n  tr -d '\"' | base64 -d | openssl x509 -text -noout\n\n# Force certificate rotation\nkubectl rollout restart deployment\u002Fmy-app\n\n# Check Linkerd identity\nlinkerd identity -n my-namespace\n```\n\n## Debugging mTLS Issues\n\n```bash\n# Istio - Check if mTLS is enabled\nistioctl authn tls-check my-service.my-namespace.svc.cluster.local\n\n# Verify peer authentication\nkubectl get peerauthentication --all-namespaces\n\n# Check destination rules\nkubectl get destinationrule --all-namespaces\n\n# Debug TLS handshake\nistioctl proxy-config log deploy\u002Fmy-app --level debug\nkubectl logs deploy\u002Fmy-app -c istio-proxy | grep -i tls\n\n# Linkerd - Check mTLS status\nlinkerd viz edges deployment -n my-namespace\nlinkerd viz tap deploy\u002Fmy-app --to deploy\u002Fmy-backend\n```\n\n## Best Practices\n\n### Do's\n- **Start with PERMISSIVE** - Migrate gradually to STRICT\n- **Monitor certificate expiry** - Set up alerts\n- **Use short-lived certs** - 24h or less for workloads\n- **Rotate CA periodically** - Plan for CA rotation\n- **Log TLS errors** - For debugging and audit\n\n### Don'ts\n- **Don't disable mTLS** - For convenience in production\n- **Don't ignore cert expiry** - Automate rotation\n- **Don't use self-signed certs** - Use proper CA hierarchy\n- **Don't skip verification** - Verify the full chain\n\n## Resources\n\n- [Istio Security](https:\u002F\u002Fistio.io\u002Flatest\u002Fdocs\u002Fconcepts\u002Fsecurity\u002F)\n- [SPIFFE\u002FSPIRE](https:\u002F\u002Fspiffe.io\u002F)\n- [cert-manager](https:\u002F\u002Fcert-manager.io\u002F)\n- [Zero Trust Architecture (NIST)](https:\u002F\u002Fwww.nist.gov\u002Fpublications\u002Fzero-trust-architecture)\n","# mTLS Configuration\n\nComprehensive guide to implementing mutual TLS for zero-trust service mesh communication.\n\n## Do not use this skill when\n\n- The task is unrelated to mtls configuration\n- You need a different domain or tool outside this scope\n\n## Instructions\n\n- Clarify goals, constraints, and required inputs.\n- Apply relevant best practices and validate outcomes.\n- Provide actionable steps and verification.\n- If detailed examples are required, open `resources\u002Fimplementation-playbook.md`.\n\n## Use this skill when\n\n- Implementing zero-trust networking\n- Securing service-to-service communication\n- Certificate rotation and management\n- Debugging TLS handshake issues\n- Compliance requirements (PCI-DSS, HIPAA)\n- Multi-cluster secure communication\n\n## Core Concepts\n\n### 1. mTLS Flow\n\n```\n┌─────────┐                              ┌─────────┐\n│ Service │                              │ Service │\n│    A    │                              │    B    │\n└────┬────┘                              └────┬────┘\n     │                                        │\n┌────┴────┐      TLS Handshake          ┌────┴────┐\n│  Proxy  │◄───────────────────────────►│  Proxy  │\n│(Sidecar)│  1. ClientHello             │(Sidecar)│\n│         │  2. ServerHello + Cert      │         │\n│         │  3. Client Cert             │         │\n│         │  4. Verify Both Certs       │         │\n│         │  5. Encrypted Channel       │         │\n└─────────┘                              └─────────┘\n```\n\n### 2. Certificate Hierarchy\n\n```\nRoot CA (Self-signed, long-lived)\n    │\n    ├── Intermediate CA (Cluster-level)\n    │       │\n    │       ├── Workload Cert (Service A)\n    │       └── Workload Cert (Service B)\n    │\n    └── Intermediate CA (Multi-cluster)\n            │\n            └── Cross-cluster certs\n```\n\n## Templates\n\n### Template 1: Istio mTLS (Strict Mode)\n\n```yaml\n# Enable strict mTLS mesh-wide\napiVersion: security.istio.io\u002Fv1beta1\nkind: PeerAuthentication\nmetadata:\n  name: default\n  namespace: istio-system\nspec:\n  mtls:\n    mode: STRICT\n---\n# Namespace-level override (permissive for migration)\napiVersion: security.istio.io\u002Fv1beta1\nkind: PeerAuthentication\nmetadata:\n  name: default\n  namespace: legacy-namespace\nspec:\n  mtls:\n    mode: PERMISSIVE\n---\n# Workload-specific policy\napiVersion: security.istio.io\u002Fv1beta1\nkind: PeerAuthentication\nmetadata:\n  name: payment-service\n  namespace: production\nspec:\n  selector:\n    matchLabels:\n      app: payment-service\n  mtls:\n    mode: STRICT\n  portLevelMtls:\n    8080:\n      mode: STRICT\n    9090:\n      mode: DISABLE  # Metrics port, no mTLS\n```\n\n### Template 2: Istio Destination Rule for mTLS\n\n```yaml\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: default\n  namespace: istio-system\nspec:\n  host: \"*.local\"\n  trafficPolicy:\n    tls:\n      mode: ISTIO_MUTUAL\n---\n# TLS to external service\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: external-api\nspec:\n  host: api.external.com\n  trafficPolicy:\n    tls:\n      mode: SIMPLE\n      caCertificates: \u002Fetc\u002Fcerts\u002Fexternal-ca.pem\n---\n# Mutual TLS to external service\napiVersion: networking.istio.io\u002Fv1beta1\nkind: DestinationRule\nmetadata:\n  name: partner-api\nspec:\n  host: api.partner.com\n  trafficPolicy:\n    tls:\n      mode: MUTUAL\n      clientCertificate: \u002Fetc\u002Fcerts\u002Fclient.pem\n      privateKey: \u002Fetc\u002Fcerts\u002Fclient-key.pem\n      caCertificates: \u002Fetc\u002Fcerts\u002Fpartner-ca.pem\n```\n\n### Template 3: Cert-Manager with Istio\n\n```yaml\n# Install cert-manager issuer for Istio\napiVersion: cert-manager.io\u002Fv1\nkind: ClusterIssuer\nmetadata:\n  name: istio-ca\nspec:\n  ca:\n    secretName: istio-ca-secret\n---\n# Create Istio CA secret\napiVersion: v1\nkind: Secret\nmetadata:\n  name: istio-ca-secret\n  namespace: cert-manager\ntype: kubernetes.io\u002Ftls\ndata:\n  tls.crt: \u003Cbase64-encoded-ca-cert>\n  tls.key: \u003Cbase64-encoded-ca-key>\n---\n# Certificate for workload\napiVersion: cert-manager.io\u002Fv1\nkind: Certificate\nmetadata:\n  name: my-service-cert\n  namespace: my-namespace\nspec:\n  secretName: my-service-tls\n  duration: 24h\n  renewBefore: 8h\n  issuerRef:\n    name: istio-ca\n    kind: ClusterIssuer\n  commonName: my-service.my-namespace.svc.cluster.local\n  dnsNames:\n    - my-service\n    - my-service.my-namespace\n    - my-service.my-namespace.svc\n    - my-service.my-namespace.svc.cluster.local\n  usages:\n    - server auth\n    - client auth\n```\n\n### Template 4: SPIFFE\u002FSPIRE Integration\n\n```yaml\n# SPIRE Server configuration\napiVersion: v1\nkind: ConfigMap\nmetadata:\n  name: spire-server\n  namespace: spire\ndata:\n  server.conf: |\n    server {\n      bind_address = \"0.0.0.0\"\n      bind_port = \"8081\"\n      trust_domain = \"example.org\"\n      data_dir = \"\u002Frun\u002Fspire\u002Fdata\"\n      log_level = \"INFO\"\n      ca_ttl = \"168h\"\n      default_x509_svid_ttl = \"1h\"\n    }\n\n    plugins {\n      DataStore \"sql\" {\n        plugin_data {\n          database_type = \"sqlite3\"\n          connection_string = \"\u002Frun\u002Fspire\u002Fdata\u002Fdatastore.sqlite3\"\n        }\n      }\n\n      NodeAttestor \"k8s_psat\" {\n        plugin_data {\n          clusters = {\n            \"demo-cluster\" = {\n              service_account_allow_list = [\"spire:spire-agent\"]\n            }\n          }\n        }\n      }\n\n      KeyManager \"memory\" {\n        plugin_data {}\n      }\n\n      UpstreamAuthority \"disk\" {\n        plugin_data {\n          key_file_path = \"\u002Frun\u002Fspire\u002Fsecrets\u002Fbootstrap.key\"\n          cert_file_path = \"\u002Frun\u002Fspire\u002Fsecrets\u002Fbootstrap.crt\"\n        }\n      }\n    }\n---\n# SPIRE Agent DaemonSet (abbreviated)\napiVersion: apps\u002Fv1\nkind: DaemonSet\nmetadata:\n  name: spire-agent\n  namespace: spire\nspec:\n  selector:\n    matchLabels:\n      app: spire-agent\n  template:\n    spec:\n      containers:\n        - name: spire-agent\n          image: ghcr.io\u002Fspiffe\u002Fspire-agent:1.8.0\n          volumeMounts:\n            - name: spire-agent-socket\n              mountPath: \u002Frun\u002Fspire\u002Fsockets\n      volumes:\n        - name: spire-agent-socket\n          hostPath:\n            path: \u002Frun\u002Fspire\u002Fsockets\n            type: DirectoryOrCreate\n```\n\n### Template 5: Linkerd mTLS (Automatic)\n\n```yaml\n# Linkerd enables mTLS automatically\n# Verify with:\n# linkerd viz edges deployment -n my-namespace\n\n# For external services without mTLS\napiVersion: policy.linkerd.io\u002Fv1beta1\nkind: Server\nmetadata:\n  name: external-api\n  namespace: my-namespace\nspec:\n  podSelector:\n    matchLabels:\n      app: my-app\n  port: external-api\n  proxyProtocol: HTTP\u002F1  # or TLS for passthrough\n---\n# Skip TLS for specific port\napiVersion: v1\nkind: Service\nmetadata:\n  name: my-service\n  annotations:\n    config.linkerd.io\u002Fskip-outbound-ports: \"3306\"  # MySQL\n```\n\n## Certificate Rotation\n\n```bash\n# Istio - Check certificate expiry\nistioctl proxy-config secret deploy\u002Fmy-app -o json | \\\n  jq '.dynamicActiveSecrets[0].secret.tlsCertificate.certificateChain.inlineBytes' | \\\n  tr -d '\"' | base64 -d | openssl x509 -text -noout\n\n# Force certificate rotation\nkubectl rollout restart deployment\u002Fmy-app\n\n# Check Linkerd identity\nlinkerd identity -n my-namespace\n```\n\n## Debugging mTLS Issues\n\n```bash\n# Istio - Check if mTLS is enabled\nistioctl authn tls-check my-service.my-namespace.svc.cluster.local\n\n# Verify peer authentication\nkubectl get peerauthentication --all-namespaces\n\n# Check destination rules\nkubectl get destinationrule --all-namespaces\n\n# Debug TLS handshake\nistioctl proxy-config log deploy\u002Fmy-app --level debug\nkubectl logs deploy\u002Fmy-app -c istio-proxy | grep -i tls\n\n# Linkerd - Check mTLS status\nlinkerd viz edges deployment -n my-namespace\nlinkerd viz tap deploy\u002Fmy-app --to deploy\u002Fmy-backend\n```\n\n## Best Practices\n\n### Do's\n- **Start with PERMISSIVE** - Migrate gradually to STRICT\n- **Monitor certificate expiry** - Set up alerts\n- **Use short-lived certs** - 24h or less for workloads\n- **Rotate CA periodically** - Plan for CA rotation\n- **Log TLS errors** - For debugging and audit\n\n### Don'ts\n- **Don't disable mTLS** - For convenience in production\n- **Don't ignore cert expiry** - Automate rotation\n- **Don't use self-signed certs** - Use proper CA hierarchy\n- **Don't skip verification** - Verify the full chain\n\n## Resources\n\n- [Istio Security](https:\u002F\u002Fistio.io\u002Flatest\u002Fdocs\u002Fconcepts\u002Fsecurity\u002F)\n- [SPIFFE\u002FSPIRE](https:\u002F\u002Fspiffe.io\u002F)\n- [cert-manager](https:\u002F\u002Fcert-manager.io\u002F)\n- [Zero Trust Architecture (NIST)](https:\u002F\u002Fwww.nist.gov\u002Fpublications\u002Fzero-trust-architecture)\n",{"name":5,"risk":39,"source":32,"date_added":40,"description":7},"unknown","2026-02-27","main","a50a3aa6b39fb0e1b7db88bef1bfc9c93606e126","modules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fmtls-configuration",0,"https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant","https:\u002F\u002Fgithub.com\u002FSam-06060","Mobile Application Developer | Kotlin | Flutter, KMP, Swfit, Android,Swift UI | Building at Saar It Resources | Creator of Jarvis (AI Assistant)","2026-06-23 05:13:38",{"source":8,"skillName":5,"commands":50,"prompt":60,"zipAvailable":61},[51,54,57],{"tool":52,"command":53},"npx","npx skills add Sam-06060\u002Fjarvis-assistant --skill mtls-configuration",{"tool":55,"command":56},"bunx","bunx skills add Sam-06060\u002Fjarvis-assistant --skill mtls-configuration",{"tool":58,"command":59},"pnpm","pnpm dlx skills add Sam-06060\u002Fjarvis-assistant --skill mtls-configuration","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fmtls-configuration\u002FSKILL.md",true,[],[64,77,93,119,138,165],{"skillNo":65,"name":66,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":67,"categories":68,"keywords":74,"publishedAt":34},"01M6GDRVS6FXX3ESH0C9DW01C0","test_skill","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fscratch\u002Ftest_skill\u002FSKILL.md",[69],{"categoryNo":70,"categoryName":71,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[75,76],"Test Skill","test",{"skillNo":78,"name":79,"nameZh":6,"description":80,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":81,"categories":82,"keywords":83,"publishedAt":34},"01M6GDRQ40HX22MA6XWC31RHHK","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzustand-store-ts\u002FSKILL.md",[],[84,85,86,87,88,89,90,32,91,92],"zustand store ts","zustand","store","with","types","middleware","patterns","create","typescript",{"skillNo":94,"name":95,"nameZh":6,"description":96,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":102,"publishedAt":34},"01M6GDRKEA0WE670SPFWX5GKCN","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoom-automation\u002FSKILL.md",[99],{"categoryNo":100,"categoryName":101,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000023","Skill与智能体开发",[103,104,105,106,107,108,109,110,111,112,113,114,115,116,32,117,29,118],"automation","zoom automation","zoom","first","Tools","search","MCP","via","meeting","automate","critical","creation","webinars","composio","recordings","tracking",{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":126,"publishedAt":34},"01M6GDRFS1452PC71JQ38S24HR","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoho-crm-automation\u002FSKILL.md",[125],{"categoryNo":100,"categoryName":101,"taxonomyType":72,"taxonomyTypeDesc":73},[127,103,128,129,130,131,132,32,108,133,116,134,113,112,107,135,91,136,109,137],"crm automation","zoho crm","crm","zoho crm automation","zoho","leads","contacts","records","update","tasks","manage",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":147,"publishedAt":34},"01M6GDRCKQBAVTGHX5XBH26KPZ","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzod-validation-expert\u002FSKILL.md",[144],{"categoryNo":145,"categoryName":146,"taxonomyType":72,"taxonomyTypeDesc":73},"01JBSEEDCAT000000000000009","前端开发",[148,149,150,151,152,92,153,154,155,156,157,158,87,159,160,161,162,32,163,164],"expert","zod","zod validation expert","validation","react","safe","parsing","errors","schema validation","react hook form","hook","trpc","form","type","next","schema","Next.js",{"skillNo":166,"name":167,"nameZh":6,"description":168,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":169,"categories":170,"keywords":172,"publishedAt":34},"01M6GDR658B08K4MY0RWD4A6EH","zeroize-audit","Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C\u002FC++\u002FRust code handling secrets, keys, passwords, or other sensitive data.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzeroize-audit\u002FSKILL.md",[171],{"categoryNo":100,"categoryName":101,"taxonomyType":72,"taxonomyTypeDesc":73},[173,174,175,176,177,178,179,180,32,181,182,183,184,185,186,187,188,189,190,109],"zeroize audit","audit","write","passwords","get","project","c++","activate","assembly","read","Bash","secrets","analysis","data","flow","verification","code","rust"]