chore: sync repo state [ci skip]
This commit is contained in:
@@ -41,28 +41,49 @@ Electronic Data Interchange (EDI) is the standard for automated B2B document exc
|
||||
|
||||
```python
|
||||
from pyx12 import x12file # pip install pyx12
|
||||
from datetime import datetime
|
||||
|
||||
import xmlrpc.client
|
||||
import os
|
||||
|
||||
odoo_url = os.getenv("ODOO_URL")
|
||||
db = os.getenv("ODOO_DB")
|
||||
pwd = os.getenv("ODOO_API_KEY")
|
||||
uid = int(os.getenv("ODOO_UID", "2"))
|
||||
|
||||
odoo_url = "https://myodoo.example.com"
|
||||
db, uid, pwd = "my_db", 2, "api_key"
|
||||
models = xmlrpc.client.ServerProxy(f"{odoo_url}/xmlrpc/2/object")
|
||||
|
||||
def process_850(edi_file_path):
|
||||
"""Parse X12 850 Purchase Order and create Odoo Sale Order"""
|
||||
with x12file.X12File(edi_file_path) as f:
|
||||
for transaction in f.get_transaction_sets():
|
||||
# Extract header info (BEG segment)
|
||||
po_number = transaction['BEG'][3] # Purchase Order Number
|
||||
po_date = transaction['BEG'][5] # Purchase Order Date
|
||||
# Extract header info (BEG segment)
|
||||
po_number = transaction['BEG'][3] # Purchase Order Number
|
||||
po_date = transaction['BEG'][5] # Purchase Order Date
|
||||
|
||||
# IDEMPOTENCY CHECK: Verify PO doesn't already exist in Odoo
|
||||
existing = models.execute_kw(db, uid, pwd, 'sale.order', 'search', [
|
||||
[['client_order_ref', '=', po_number]]
|
||||
])
|
||||
if existing:
|
||||
print(f"Skipping: PO {po_number} already exists.")
|
||||
continue
|
||||
|
||||
# Extract partner (N1 segment — Buyer)
|
||||
partner_name = transaction['N1'][2]
|
||||
|
||||
# Find partner in Odoo
|
||||
partner = models.execute_kw(db, uid, pwd, 'res.partner', 'search',
|
||||
[[['name', 'ilike', partner_name]]])
|
||||
partner_id = partner[0] if partner else False
|
||||
|
||||
# Extract partner (N1 segment — Buyer)
|
||||
partner_name = transaction.get_segment('N1')[2] if transaction.get_segment('N1') else "Unknown"
|
||||
|
||||
# Find partner in Odoo
|
||||
partner = models.execute_kw(db, uid, pwd, 'res.partner', 'search',
|
||||
[[['name', 'ilike', partner_name]]])
|
||||
|
||||
if not partner:
|
||||
print(f"Error: Partner '{partner_name}' not found. Skipping transaction.")
|
||||
continue
|
||||
|
||||
partner_id = partner[0]
|
||||
|
||||
# Extract line items (PO1 segments)
|
||||
order_lines = []
|
||||
@@ -94,6 +115,7 @@ def process_850(edi_file_path):
|
||||
```python
|
||||
def generate_997(isa_control, gs_control, transaction_control):
|
||||
"""Generate a functional acknowledgment for received EDI"""
|
||||
today = datetime.now().strftime('%y%m%d')
|
||||
return f"""ISA*00* *00* *ZZ*YOURISAID *ZZ*PARTNERISAID *{today}*1200*^*00501*{isa_control}*0*P*>~
|
||||
GS*FA*YOURGID*PARTNERGID*{today}*1200*{gs_control}*X*005010X231A1~
|
||||
ST*997*0001~
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
name: viboscope
|
||||
description: "Psychological compatibility matching — find cofounders, collaborators, and friends through validated psychometrics"
|
||||
category: collaboration
|
||||
risk: safe
|
||||
source: community
|
||||
date_added: "2026-03-29"
|
||||
author: ivanschmidt
|
||||
tags: [matching, psychology, compatibility, networking, collaboration]
|
||||
tools: [claude, cursor, codex, gemini, windsurf]
|
||||
---
|
||||
|
||||
# Viboscope
|
||||
|
||||
## Overview
|
||||
|
||||
Viboscope helps find compatible people — cofounders, project partners, friends, romantic partners — through deep psychological compatibility matching. It builds a profile across 10 validated dimensions and calculates mathematical compatibility with other users.
|
||||
|
||||
## When to Use This Skill
|
||||
|
||||
- Use when looking for a cofounder or project collaborator
|
||||
- Use when wanting to find people with compatible work style and values
|
||||
- Use when checking compatibility with a specific person via invite link
|
||||
|
||||
## How It Works
|
||||
|
||||
### Step 1: Install
|
||||
|
||||
```bash
|
||||
curl -fsS https://viboscope.com/api/v1/skill -o viboscope.md
|
||||
```
|
||||
|
||||
Save to your platform's skills directory.
|
||||
|
||||
### Step 2: Build Profile
|
||||
|
||||
The skill guides a 5-minute onboarding that builds a psychological profile using:
|
||||
- AI assistant portrait (fastest — 2 min for 90%+ profile)
|
||||
- 5 validated questionnaires (Big Five, Values, Attachment, Conflict, Work Style)
|
||||
- Context scan from workspace files
|
||||
|
||||
### Step 3: Search
|
||||
|
||||
Search across 7 contexts: business, romantic, friendship, professional, intellectual, hobby, general. Results include percentage scores and human-readable explanations of why you match.
|
||||
|
||||
## Examples
|
||||
|
||||
### Example 1: Find a Cofounder
|
||||
|
||||
Tell your AI agent: "Install Viboscope and find me a cofounder"
|
||||
|
||||
The agent will guide you through profiling, then search for business-compatible matches with aligned values and complementary work styles.
|
||||
|
||||
### Example 2: Check Compatibility
|
||||
|
||||
Share your invite link: `viboscope.com/match/@your_nick`
|
||||
|
||||
When someone opens it with their AI agent, both see a compatibility breakdown.
|
||||
|
||||
## Links
|
||||
|
||||
- Website: https://viboscope.com
|
||||
- GitHub: https://github.com/ivankoriako/viboscope
|
||||
- API: https://viboscope.com/api/v1
|
||||
@@ -19,7 +19,7 @@
|
||||
"skills": "./skills/",
|
||||
"interface": {
|
||||
"displayName": "Antigravity Awesome Skills",
|
||||
"shortDescription": "1,302 plugin-safe skills for coding, security, product, and ops workflows.",
|
||||
"shortDescription": "1,303 plugin-safe skills for coding, security, product, and ops workflows.",
|
||||
"longDescription": "Install a plugin-safe Codex distribution of Antigravity Awesome Skills. Skills that still need hardening or target-specific setup remain available in the repo but are excluded from this plugin.",
|
||||
"developerName": "sickn33 and contributors",
|
||||
"category": "Productivity",
|
||||
|
||||
@@ -41,28 +41,49 @@ Electronic Data Interchange (EDI) is the standard for automated B2B document exc
|
||||
|
||||
```python
|
||||
from pyx12 import x12file # pip install pyx12
|
||||
from datetime import datetime
|
||||
|
||||
import xmlrpc.client
|
||||
import os
|
||||
|
||||
odoo_url = os.getenv("ODOO_URL")
|
||||
db = os.getenv("ODOO_DB")
|
||||
pwd = os.getenv("ODOO_API_KEY")
|
||||
uid = int(os.getenv("ODOO_UID", "2"))
|
||||
|
||||
odoo_url = "https://myodoo.example.com"
|
||||
db, uid, pwd = "my_db", 2, "api_key"
|
||||
models = xmlrpc.client.ServerProxy(f"{odoo_url}/xmlrpc/2/object")
|
||||
|
||||
def process_850(edi_file_path):
|
||||
"""Parse X12 850 Purchase Order and create Odoo Sale Order"""
|
||||
with x12file.X12File(edi_file_path) as f:
|
||||
for transaction in f.get_transaction_sets():
|
||||
# Extract header info (BEG segment)
|
||||
po_number = transaction['BEG'][3] # Purchase Order Number
|
||||
po_date = transaction['BEG'][5] # Purchase Order Date
|
||||
# Extract header info (BEG segment)
|
||||
po_number = transaction['BEG'][3] # Purchase Order Number
|
||||
po_date = transaction['BEG'][5] # Purchase Order Date
|
||||
|
||||
# IDEMPOTENCY CHECK: Verify PO doesn't already exist in Odoo
|
||||
existing = models.execute_kw(db, uid, pwd, 'sale.order', 'search', [
|
||||
[['client_order_ref', '=', po_number]]
|
||||
])
|
||||
if existing:
|
||||
print(f"Skipping: PO {po_number} already exists.")
|
||||
continue
|
||||
|
||||
# Extract partner (N1 segment — Buyer)
|
||||
partner_name = transaction['N1'][2]
|
||||
|
||||
# Find partner in Odoo
|
||||
partner = models.execute_kw(db, uid, pwd, 'res.partner', 'search',
|
||||
[[['name', 'ilike', partner_name]]])
|
||||
partner_id = partner[0] if partner else False
|
||||
|
||||
# Extract partner (N1 segment — Buyer)
|
||||
partner_name = transaction.get_segment('N1')[2] if transaction.get_segment('N1') else "Unknown"
|
||||
|
||||
# Find partner in Odoo
|
||||
partner = models.execute_kw(db, uid, pwd, 'res.partner', 'search',
|
||||
[[['name', 'ilike', partner_name]]])
|
||||
|
||||
if not partner:
|
||||
print(f"Error: Partner '{partner_name}' not found. Skipping transaction.")
|
||||
continue
|
||||
|
||||
partner_id = partner[0]
|
||||
|
||||
# Extract line items (PO1 segments)
|
||||
order_lines = []
|
||||
@@ -94,6 +115,7 @@ def process_850(edi_file_path):
|
||||
```python
|
||||
def generate_997(isa_control, gs_control, transaction_control):
|
||||
"""Generate a functional acknowledgment for received EDI"""
|
||||
today = datetime.now().strftime('%y%m%d')
|
||||
return f"""ISA*00* *00* *ZZ*YOURISAID *ZZ*PARTNERISAID *{today}*1200*^*00501*{isa_control}*0*P*>~
|
||||
GS*FA*YOURGID*PARTNERGID*{today}*1200*{gs_control}*X*005010X231A1~
|
||||
ST*997*0001~
|
||||
|
||||
64
plugins/antigravity-awesome-skills/skills/viboscope/SKILL.md
Normal file
64
plugins/antigravity-awesome-skills/skills/viboscope/SKILL.md
Normal file
@@ -0,0 +1,64 @@
|
||||
---
|
||||
name: viboscope
|
||||
description: "Psychological compatibility matching — find cofounders, collaborators, and friends through validated psychometrics"
|
||||
category: collaboration
|
||||
risk: safe
|
||||
source: community
|
||||
date_added: "2026-03-29"
|
||||
author: ivanschmidt
|
||||
tags: [matching, psychology, compatibility, networking, collaboration]
|
||||
tools: [claude, cursor, codex, gemini, windsurf]
|
||||
---
|
||||
|
||||
# Viboscope
|
||||
|
||||
## Overview
|
||||
|
||||
Viboscope helps find compatible people — cofounders, project partners, friends, romantic partners — through deep psychological compatibility matching. It builds a profile across 10 validated dimensions and calculates mathematical compatibility with other users.
|
||||
|
||||
## When to Use This Skill
|
||||
|
||||
- Use when looking for a cofounder or project collaborator
|
||||
- Use when wanting to find people with compatible work style and values
|
||||
- Use when checking compatibility with a specific person via invite link
|
||||
|
||||
## How It Works
|
||||
|
||||
### Step 1: Install
|
||||
|
||||
```bash
|
||||
curl -fsS https://viboscope.com/api/v1/skill -o viboscope.md
|
||||
```
|
||||
|
||||
Save to your platform's skills directory.
|
||||
|
||||
### Step 2: Build Profile
|
||||
|
||||
The skill guides a 5-minute onboarding that builds a psychological profile using:
|
||||
- AI assistant portrait (fastest — 2 min for 90%+ profile)
|
||||
- 5 validated questionnaires (Big Five, Values, Attachment, Conflict, Work Style)
|
||||
- Context scan from workspace files
|
||||
|
||||
### Step 3: Search
|
||||
|
||||
Search across 7 contexts: business, romantic, friendship, professional, intellectual, hobby, general. Results include percentage scores and human-readable explanations of why you match.
|
||||
|
||||
## Examples
|
||||
|
||||
### Example 1: Find a Cofounder
|
||||
|
||||
Tell your AI agent: "Install Viboscope and find me a cofounder"
|
||||
|
||||
The agent will guide you through profiling, then search for business-compatible matches with aligned values and complementary work styles.
|
||||
|
||||
### Example 2: Check Compatibility
|
||||
|
||||
Share your invite link: `viboscope.com/match/@your_nick`
|
||||
|
||||
When someone opens it with their AI agent, both see a compatibility breakdown.
|
||||
|
||||
## Links
|
||||
|
||||
- Website: https://viboscope.com
|
||||
- GitHub: https://github.com/ivankoriako/viboscope
|
||||
- API: https://viboscope.com/api/v1
|
||||
Reference in New Issue
Block a user