Class: Google::Apis::AgentregistryV1alpha::Skill

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/agentregistry_v1alpha/classes.rb,
lib/google/apis/agentregistry_v1alpha/representations.rb,
lib/google/apis/agentregistry_v1alpha/representations.rb

Overview

Represents an Executable Agent Skill or a Composite Tool Suite (Bundle). Sibling resource with Agent and McpServer under agentregistry.googleapis.com.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Skill

Returns a new instance of Skill.



1623
1624
1625
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1623

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#create_timeString

Output only. Create time. Corresponds to the JSON property createTime

Returns:

  • (String)


1539
1540
1541
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1539

def create_time
  @create_time
end

#default_revisionString

Optional. The full resource name of the revision currently served by default ( floating track). Format: projects/project/locations/location/skills/ skill/revisions/revision` Corresponds to the JSON propertydefaultRevision`

Returns:

  • (String)


1546
1547
1548
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1546

def default_revision
  @default_revision
end

#descriptionString

Optional. Brief summary describing the capabilities of the skill. Maximum length is 2048 characters. Corresponds to the JSON property description

Returns:

  • (String)


1552
1553
1554
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1552

def description
  @description
end

#display_nameString

Required. Human-readable display name of the skill. Maximum length is 128 characters. Corresponds to the JSON property displayName

Returns:

  • (String)


1558
1559
1560
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1558

def display_name
  @display_name
end

#frontmatterGoogle::Apis::AgentregistryV1alpha::Frontmatter

Structured metadata attributes extracted from the package's local SKILL.md frontmatter. Corresponds to the JSON property frontmatter



1564
1565
1566
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1564

def frontmatter
  @frontmatter
end

#initial_revisionGoogle::Apis::AgentregistryV1alpha::SkillRevision

Represents an immutable, versioned snapshot of a Skill package. Corresponds to the JSON property initialRevision



1569
1570
1571
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1569

def initial_revision
  @initial_revision
end

#nameString

Identifier. Resource name of the Skill. Format: projects/project/locations/ location/skills/skillTheskill`segment acts as the resource ID. If the skill is associated with a Publisher, this segment typically uses a hyphenated namespace prefix corresponding to the publisher (e.g.,google- workspace-create-docs). Corresponds to the JSON propertyname`

Returns:

  • (String)


1578
1579
1580
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1578

def name
  @name
end

#publisherString

Optional. The publisher resource associated with this skill. Format: projects/ project/locations/location/publishers/publisher`The publisher dictates the allowed namespace prefixes for the skill's name and logicalskill_id(e. g., Publishergoogleauthorizes thegoogle-*prefix). Corresponds to the JSON propertypublisher`

Returns:

  • (String)


1586
1587
1588
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1586

def publisher
  @publisher
end

#skill_idString

Output only. A stable, globally unique logical identifier for the skill. It is securely constructed by the backend by combining the associated publisher's verified namespace and the skill's resource ID to enforce strict ownership. For example, the prefix google- is reserved exclusively for first-party Google publishers to prevent namespace squatting. Example: urn:skill:google- workspace:create-docs Corresponds to the JSON property skillId

Returns:

  • (String)


1596
1597
1598
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1596

def skill_id
  @skill_id
end

#stateString

Output only. The system-managed state of the skill. Corresponds to the JSON property state

Returns:

  • (String)


1601
1602
1603
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1601

def state
  @state
end

#target_stateString

Required. User-managed target state of the skill. Corresponds to the JSON property targetState

Returns:

  • (String)


1606
1607
1608
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1606

def target_state
  @target_state
end

#typeString

Required. Structural deployment type (SIMPLE leaf vs COMPOSITE bundle). Corresponds to the JSON property type

Returns:

  • (String)


1611
1612
1613
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1611

def type
  @type
end

#uidString

Output only. Universally unique identifier (UUID4) for the logical container. Corresponds to the JSON property uid

Returns:

  • (String)


1616
1617
1618
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1616

def uid
  @uid
end

#update_timeString

Output only. Update time. Corresponds to the JSON property updateTime

Returns:

  • (String)


1621
1622
1623
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1621

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
# File 'lib/google/apis/agentregistry_v1alpha/classes.rb', line 1628

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @default_revision = args[:default_revision] if args.key?(:default_revision)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @frontmatter = args[:frontmatter] if args.key?(:frontmatter)
  @initial_revision = args[:initial_revision] if args.key?(:initial_revision)
  @name = args[:name] if args.key?(:name)
  @publisher = args[:publisher] if args.key?(:publisher)
  @skill_id = args[:skill_id] if args.key?(:skill_id)
  @state = args[:state] if args.key?(:state)
  @target_state = args[:target_state] if args.key?(:target_state)
  @type = args[:type] if args.key?(:type)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
end