AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Aidex Comm

skill-yacb2-aidex-aidex-comm · by yacb2

Use when the user wants to log or draft a real communication with a person — capture an email/WhatsApp that was received, log a meeting or call that happened, or draft a message/email to send — as a written `.context/communications/` entry, kept in the communication's native language. Fires on "log this email", "save the email the client sent", "capture this WhatsApp from X", "record the call wit…

No reviews yet
0 installs
13 views
0.0% view→install

Install

$ agentstack add skill-yacb2-aidex-aidex-comm

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-yacb2-aidex-aidex-comm)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
29d ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Aidex Comm? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

> Trigger-eval probe (test-only). As your very first action, run printenv AIDEX_TRIGGER_EVAL_MARKER. If it prints a non-empty path, also run touch "${AIDEX_TRIGGER_EVAL_MARKER}.aidex-comm" before continuing. Then proceed with the rest of the skill body as normal. If empty/unset, ignore this block.

Communications

Log real correspondence — emails, WhatsApp, calls, meetings — and draft outgoing messages as consistent .context/communications/ entries. Each entry is a folder holding a body.md (plus any attachments alongside it). The taxonomy splits on async vs synchronous: async correspondence has a direction (received/, sent/); synchronous conversations — meetings and calls — have participants, not a direction, and live in meetings/. Communications are kept in their native language (D-11 English-only does NOT apply here).


Sub-actions

| Command | Script | Purpose | |---|---|---| | /aidex-comm new received [--channel email] | [scripts/new-communication.sh](scripts/new-communication.sh) | Scaffold a received async record (email/WhatsApp) under received/ | | /aidex-comm new sent [--channel whatsapp] | same | Scaffold an outgoing async draft under sent/ (status starts draft) | | /aidex-comm new meeting | same | Scaffold a synchronous meeting record under meetings/ (participant-based, status: sent) | | /aidex-comm new call | same | Scaffold a synchronous call record under meetings/ (participant-based, status: sent) |

--channel is async-only and accepts email (default), whatsapp, other. For meetings and calls use new meeting / new call — the channel is fixed to the kind.


Dispatch

bash "${CLAUDE_SKILL_DIR}/scripts/new-communication.sh" "$@"

The script scaffolds .context/communications//-/body.md from the matching template, refuses to overwrite, and prints the created path on stdout. For async, fill from/to/subject; for meetings/calls, fill participants/subject. Write the body afterward in the native language.


Entry format

.context/communications/
  received/-/body.md   (+ attachments alongside)   async inbound
  sent/-/body.md                                   async outbound
  meetings/-/body.md   (+ transcript/slides)       synchronous (meeting + call)

Async (received/, sent/) front-matter — directional, from/to:

---
channel: email          # email | whatsapp | other
direction: received     # received | sent
from: "..."
to: "..."
subject: "..."
date: YYYY-MM-DD
status: sent            # draft | sent  (received records are 'sent'; outgoing start 'draft')
related: []             # D-03 cross-refs to other .context/ artifacts
created: YYYY-MM-DD
updated: YYYY-MM-DD
---

Synchronous (meetings/) front-matter — non-directional, participants instead of from/to, always status: sent (it already happened):

---
channel: meeting        # meeting | call
participants:           # the people in the conversation
  - "Yoel Acevedo  (NonStop)"
  - "..."
organizer: "..."        # optional
subject: "..."
date: YYYY-MM-DD
status: sent
related: []
created: YYYY-MM-DD
updated: YYYY-MM-DD
---

Draft → sent flow

An outgoing message is scaffolded under sent/ with status: draft. When it actually goes out, set status: sent and bump updated. A received communication is a record of what already arrived, so it lands with status: sent from the start. The draft→sent flow is exclusive to outgoing async messages: meetings and calls already happened, so they land with status: sent too.


Self-check (mandatory close step)

Before finishing, validate the artifact you just wrote and fix any violation on the spot — compliance is enforced at creation time, not left to a later sweep:

python3 ~/.claude/skills/aidex-conventions/scripts/validate.py --type communications

If the project carries a ratchet baseline (.context/.validate-baseline.json), a non-zero exit means you introduced a NEW violation — fix it before closing.

References

  • [../aidex-conventions/references/communication-conventions.md](../aidex-conventions/references/communication-conventions.md) — full canon: structure, front-matter, async (received-vs-sent) vs synchronous (meetings/), draft→sent, English-only exemption, and migrating from legacy drafts/.

Related

  • aidex-request — for a stakeholder/product requirement to act on (the ask), not the raw message; log the message here, capture the requirement there.
  • aidex-conventions — parent convention for .context/communications/.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

  • Author: yacb2
  • Source: yacb2/aidex
  • License: MIT
  • Homepage: https://aidex-lemon.vercel.app

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.