In most experiments with user interface agents to date, it has been necessary either to implement both the agent and the application from scratch, or to modify the code of an existing application to enable the necessary communication. Instead, we would like to be able to “attach” an agent to an existing application, while requiring only a minimum of advance planning on the part of the application developer. Commercial applications are increasingly supporting the use of “application programmers’ interfaces” and scripting languages as mean of achieving external control of applications, Are these mechanisms sufficient for software agents to achieve communication with applications? Permission to make digital/hard copies ofall or part ofthis material for personal or classroom use is granted without fee provided that the copies are not made or distributed for profit or commercial advantage, the copyri&t notice, the title ofthe publication and its date appear. and notice is given that copyright is by permission oflhe ACM, Inc. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires specific permission andlor fee. IUI9g SanFranciscoCA USA Copyri&t 1998 ACM O-89791-955-6/98/ 01..$3.50 This paper reports some preliminary experiments in developing agent software that works with existing, unmodified commercial applications and agents that work across multiple applications. We describe a programming by example agent, ScriptAgent, that uses a scripting language, Applescript, to record example procedures that am generalized by the agent. Another approach is examinability, where the application grants to the agent the right to examine internal data structures. We present another kind of learning agent, Tatlin, that compares successive application states to infer interface operations. Finally, we discuss broader systems issues such as parallelism, interface sharing between agent and application, and access to objects.
[1]
Marc P. Yvon,et al.
The AIDE project: an application-independent demonstrational environment
,
1993
.
[2]
Martin Frank.
Standardizing the Representation of User Tasks
,
1996
.
[3]
Candace L. Sidner,et al.
COLLAGEN: when agents collaborate with people
,
1997,
AGENTS '97.
[4]
Danny Goodman,et al.
The complete AppleScript handbook
,
1993
.
[5]
Henry Lieberman,et al.
Mondrian: a teachable graphical editor
,
1993,
INTERCHI.
[6]
Daniel G. Bobrow,et al.
Book review: The Art of the MetaObject Protocol By Gregor Kiczales, Jim des Rivieres, Daniel G. and Bobrow(MIT Press, 1991)
,
1991,
SGAR.
[7]
Brad A. Myers.
Tourmaline: text formatting by demonstration
,
1993
.
[8]
Richard Potter,et al.
Triggers: guiding automation with pixels to achieve data access
,
1993
.
[9]
Pattie Maes,et al.
Learning Interface Agents
,
1993,
AAAI.
[10]
Henry Lieberman,et al.
Watch what I do: programming by demonstration
,
1993
.
[11]
Oren Etzioni,et al.
A softbot-based interface to the Internet
,
1994,
CACM.