SHOW AGENTS
SHOW AGENTS
접근 권한이 있는 Cortex Agents를 나열하는 명령이에요.
출처: 문서
본문
구문 (Syntax)
SHOW AGENTS
[ LIKE '<pattern>' ]
[ IN { ACCOUNT | DATABASE [ <db_name> ] | SCHEMA [ <schema_name> ] } ]
[ STARTS WITH '<name_string>' ]
[ LIMIT <rows> [ FROM '<name_string>' ] ]
파라미터
- LIKE 'pattern' — 객체 이름으로 명령 출력을 선택적으로 필터링해요. 필터는 대소문자 무시 패턴 매칭을 사용하며 SQL 와일드카드 문자(%와 _)를 지원해요. 기본값: 없음(필터링 없음).
- [ IN ... ] — 명령의 범위를 선택적으로 지정해요. 다음 중 하나를 지정해요:
ACCOUNT— 전체 계정의 레코드를 반환.DATABASE,DATABASE db_name— 현재 사용 중인 데이터베이스 또는 지정된 데이터베이스(db_name)의 레코드를 반환. db_name 없이 DATABASE를 지정하고 사용 중인 데이터베이스가 없다면 키워드는 출력에 영향이 없어요. 참고: 데이터베이스 컨텍스트에서 IN 절 없이 SHOW 명령을 사용하면 예상보다 적은 결과가 나올 수 있어요. IN 절을 사용하지 않으면 같은 이름의 객체는 한 번만 표시돼요.SCHEMA,SCHEMA schema_name— 현재 사용 중인 스키마 또는 지정된 스키마(schema_name)의 레코드를 반환. 데이터베이스가 사용 중이거나 정규화된 schema_name(예: db.schema)을 지정하면 SCHEMA는 선택 사항이에요. 데이터베이스가 사용 중이 아니면 SCHEMA를 지정해도 출력에 영향이 없어요. IN ...을 생략하면 명령의 범위는 세션이 현재 사용 중인 데이터베이스가 있는지에 따라 달라져요:- 데이터베이스가 현재 사용 중이면 명령은 데이터베이스에서 볼 권한이 있는 객체를 반환해요.
IN DATABASE를 지정한 것과 같은 효과예요. - 데이터베이스가 현재 사용 중이 아니면 명령은 계정에서 볼 권한이 있는 객체를 반환해요.
IN ACCOUNT를 지정한 것과 같은 효과예요.
- STARTS WITH 'name_string' — 객체 이름 시작 부분에 나타나는 문자를 기반으로 명령 출력을 선택적으로 필터링해요. 문자열은 작은따옴표로 묶어야 하며 대소문자를 구분해요. 기본값: 없음(필터링 없음).
- LIMIT rows — 반환되는 최대 행 수를 선택적으로 제한해요. 실제 반환되는 행 수는 지정된 한도보다 적을 수 있어요(예: 기존 객체 수가 지정된 한도보다 적음). 기본값: 없음(한도 없음).
출력 (Output)
명령 출력은 다음 열에 Cortex Agent 속성과 메타데이터를 제공해요:
| Column | Description |
|---|---|
| created_on | 에이전트가 생성된 타임스탬프. |
| name | 에이전트의 이름. |
| database_name | 에이전트를 포함하는 데이터베이스. |
| schema_name | 에이전트를 포함하는 스키마. |
| owner | 에이전트의 소유자 역할. |
| comment | 에이전트에 대한 주석 텍스트. |
| profile | 에이전트 프로필 JSON(display_name, avatar, color). |
| is_secure | 에이전트가 보안(secure)인지 여부(true 또는 false). |
접근 제어 요구사항 (Access control requirements)
이 SQL 명령을 실행하는 역할은 최소한 다음 권한 중 하나를 가져야 해요:
| Privilege | Object | Notes |
|---|---|---|
| 다음 권한 중 하나: OWNERSHIP, USAGE, MODIFY, MONITOR | Agent |
스키마에서 객체를 운영하려면 부모 데이터베이스에 대한 권한이 하나 이상, 부모 스키마에 대한 권한이 하나 이상 필요해요.
사용 메모 (Usage notes)
- 이 명령은 실행하는 데 실행 중인 웨어하우스가 필요하지 않아요.
- 이 명령은 현재 사용자의 현재 역할에 접근 권한이 하나 이상 부여된 객체만 반환해요.
- MANAGE GRANTS 접근 권한은 보유자가 계정의 모든 객체를 볼 수 있게 암시적으로 허용해요. 기본적으로 계정 관리자(ACCOUNTADMIN)와 보안 관리자(SECURITYADMIN)만 이 권한을 가져요.
- 출력 열 이름은 소문자이므로 출력 열을 참조할 때 큰따옴표로 묶은 식별자를 사용해요(예:
SELECT "type"). - 이 명령은 최대 1만 개의 레코드를 반환해요.
- 현재 세션에서 생성된 임시 에이전트는 해당 세션의 SHOW AGENTS 출력에 나타나요. 다른 세션이나 사용자에게는 보이지 않아요.
예시 (Examples)
현재 스키마의 모든 에이전트를 나열해요:
SHOW AGENTS;
샘플 출력:
+-------------------------------+------------+---------------+-------------+-----------+---------+--------------------------+-----------+
| created_on | name | database_name | schema_name | owner | comment | profile | is_secure |
|-------------------------------+------------+---------------+-------------+-----------+---------+--------------------------+-----------|
| 2025-09-15 17:04:37.263 +0000 | TEST_AGENT | EXAMPLE_DB | AGENTS | TEST_ROLE | null | {"display_name":"test"} | false |
+-------------------------------+------------+---------------+-------------+-----------+---------+--------------------------+-----------+
특정 스키마의 에이전트를 나열해요:
SHOW AGENTS IN SCHEMA mydb.myschema;
특정 데이터베이스의 에이전트를 나열해요:
SHOW AGENTS IN DATABASE mydb;
계정의 모든 에이전트를 나열해요:
SHOW AGENTS IN ACCOUNT;
이름이 my_agent로 시작하는 에이전트를 나열해요:
SHOW AGENTS LIKE 'my_agent%';
처음 10개 에이전트를 나열해요. 두 번째 문장은 AGENT_NAME이라는 에이전트에서 시작하는 처음 10개 에이전트를 나열해요:
SHOW AGENTS LIMIT 10;
SHOW AGENTS LIMIT 10 FROM 'AGENT_NAME';
에이전트를 JSON 형식의 리소스로 나열해요:
SHOW AS RESOURCE AGENTS;