- πΉ 1. Where Metadata Lives
- πΉ 2. The group Property (Required for categorization)
- πΉ 3. The description Property (Shown in help system)
- πΉ 4. The alias Property
- πΉ 5. The hidden Property (Hide from help)
- πΉ 6. The public Property (Guest Mode Control)
- πΉ 7. Full Example of Metadata
- πΉ 8. Adding Metadata in Add-On Scripts
- πΉ 9. Metadata-Driven Command Sorting
- πΉ 10. Metadata for Overridden Commands
- πΉ 11. Adding Command Groups Programmatically
- πΉ 12. Metadata for Search Enhancement
- π― Summary
The Cointacted Social Terminal includes a powerful metadata system that controls how commands appear in:
helphelp <group>help search <keyword>- command grouping
- guest access filtering
- command sorting
This article explains every metadata property available and how to use them to organize professional-grade command packs and add-ons.
πΉ 1. Where Metadata Lives #
Metadata is stored in:
CointactedSocialTerminalTerminal.commands_meta
Each command gets a metadata object:
CointactedSocialTerminalTerminal.commands_meta.mycmd = {
group: "TOOLS",
description: "Describe what this command does.",
alias: ["m", "my"],
public: true,
hidden: false,
};
Metadata can be added after command registration.
πΉ 2. The group Property (Required for categorization) #
Controls which group the command appears under in help.
Example:
group: "WALLET"
Available groups can be:
- CORE
- USER
- SITE
- WALLET
- NETWORK
- CLIENT
- FUN
- ADMIN
- (custom) β your add-ons can create new groups
Creating new groups #
Just assign a group name. If it doesnβt exist, it is automatically created.
Example:
group: "SOCIAL"
Now:
help social
will list commands in that group.
πΉ 3. The description Property (Shown in help system) #
This appears in:
helphelp <group>- search results
Example:
description: "Shows your Social Mining reward balance."
Good descriptions:
- start with an action verb
- are short
- tell you what the command does
πΉ 4. The alias Property #
Aliases are additional triggers for your command.
Example:
alias: ["rw", "rewards"]
User can then run:
socialrewards
rw
Aliases:
- appear in help
- appear in search
- must be unique
- should be lowercase
πΉ 5. The hidden Property (Hide from help) #
If you want a command to exist but not show up in help, set:
hidden: true
Reasons to hide:
- internal diagnostic tools
- developer-only commands
- system functions
- experimental features
- onboarding flows
Example:
CointactedSocialTerminalTerminal.commands_meta.debugtrace = {
group: "ADMIN",
description: "Developer trace tool.",
hidden: true,
};
Hidden commands still:
- load normally
- run normally
- support aliases
But:
- do not appear in
help - do not appear in group lists
- do not appear in search results
πΉ 6. The public Property (Guest Mode Control) #
When guest mode is enabled in settings, only safe, explicitly-marked commands can be used by non-logged-in users.
To allow a command for guests:
public: true
If omitted, default behavior = private.
Guest-safe commands must:
- not expose user data
- not require permissions
- not use private REST routes
- not show wallet information
- not expose dangerous system info
- not allow actions
Safe examples:
- ping
- browser info
- links
- site info
- social links
- info pages
Unsafe examples for guests:
- wallet
- user profile
- admin tools
- anything with sensitive data
πΉ 7. Full Example of Metadata #
CointactedSocialTerminalTerminal.commands_meta.rewards = {
group: "SOCIAL",
description: "Show your Social Mining rewards.",
alias: ["rw", "myrewards"],
public: false,
hidden: false,
};
πΉ 8. Adding Metadata in Add-On Scripts #
Add-ons should attach metadata after registering the command:
CointactedSocialTerminalTerminal.registry.mycmd = function(input) {
// code
};
CointactedSocialTerminalTerminal.commands_meta.mycmd = {
group: "ADDON",
description: "My custom command.",
alias: ["mc"],
public: true,
};
πΉ 9. Metadata-Driven Command Sorting #
Your help system sorts commands automatically:
- by group name
- then alphabetically within group
- aliases listed after main command
This ensures clean documentation even with many add-ons installed.
No developer work required β sorting is automatic.
πΉ 10. Metadata for Overridden Commands #
If you override a built-in command, you may also override its metadata:
CointactedSocialTerminalTerminal.commands_meta.wallet.description =
"Extended wallet info (add-on enhanced)";
Or replace metadata entirely:
CointactedSocialTerminalTerminal.commands_meta.wallet = {
group: "WALLET",
description: "My custom wallet handler.",
alias: ["w"],
public: false,
};
πΉ 11. Adding Command Groups Programmatically #
You donβt manually create groups β
a group is created automatically when metadata references it.
Example:
group: "CHAINTOOLKIT"
Will appear in help:
Available command groups:
CHAINTOOLKIT - X commands
Works instantly.
πΉ 12. Metadata for Search Enhancement #
Your help search:
help search gas
Matches:
- command name
- alias
- group name
- description text
This allows devs to optimize searchability by using good keywords inside descriptions.
π― Summary #
Metadata is the backbone of your help system. It controls:
β grouping #
β visibility #
β descriptions #
β aliases #
β guest permissions #
β search indexing #
β overall structure #
Using metadata properly ensures a clean, scalable command ecosystem β especially once dozens of official and third-party add-ons exist.